error[E0308]: mismatched types --> $DIR/struct-path-self-type-mismatch.rs:7:23 | LL | Self { inner: 1.5f32 }; //~ ERROR mismatched types | ^^^^^^ expected i32, found f32 error[E0308]: mismatched types --> $DIR/struct-path-self-type-mismatch.rs:15:20 | LL | inner: u | ^ expected type parameter, found a different type parameter | = note: expected type `T` found type `U` error[E0308]: mismatched types --> $DIR/struct-path-self-type-mismatch.rs:13:9 | LL | fn new(u: U) -> Foo { | ------ expected `Foo` because of return type LL | / Self { LL | | //~^ ERROR mismatched types LL | | inner: u LL | | //~^ ERROR mismatched types LL | | } | |_________^ expected type parameter, found a different type parameter | = note: expected type `Foo` found type `Foo` error: aborting due to 3 previous errors For more information about this error, try `rustc --explain E0308`.