summaryrefslogtreecommitdiffstats
path: root/tests/ui/type/type-check/point-at-inference-4.rs
blob: aea9b2c6c14eeeeeb4f927fb5ac286b3f3f1c457 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
struct S<A, B>(Option<(A, B)>);

impl<A, B> S<A, B> {
    fn infer(&self, a: A, b: B) {}
    //~^ NOTE method defined here
    //~| NOTE
    //~| NOTE
}

fn main() {
    let s = S(None);
    s.infer(0i32);
    //~^ ERROR this method takes 2 arguments but 1 argument was supplied
    //~| NOTE an argument is missing
    //~| HELP provide the argument
    let t: S<u32, _> = s;
    //~^ ERROR mismatched types
    //~| NOTE expected `S<u32, _>`, found `S<i32, _>`
    //~| NOTE expected due to this
    //~| NOTE expected struct `S<u32, _>`
}