25 lines
347 B
Rust
25 lines
347 B
Rust
struct A<T>(T);
|
|
struct B;
|
|
|
|
trait I<T> {}
|
|
impl I<i32> for B {}
|
|
impl I<u32> for B {}
|
|
|
|
trait V<U> {
|
|
fn method(self) -> U;
|
|
}
|
|
|
|
impl<T, U> V<U> for A<T>
|
|
where
|
|
T: I<U>,
|
|
{
|
|
fn method(self) -> U { unimplemented!() }
|
|
}
|
|
|
|
fn main() {
|
|
let a = A(B);
|
|
a.method();
|
|
//~^ ERROR type annotations needed
|
|
//~| ERROR type annotations needed
|
|
}
|