about summary refs log tree commit diff
path: root/tests/ui/suggestions/fn-trait-notation.rs
blob: ef0b52c9aa3ae1d0a15bce4b274e52cb20287f39 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
//@ run-rustfix
fn e0658<F, G, H>(f: F, g: G, h: H) -> i32
where
    F: Fn<i32, Output = i32>, //~ ERROR E0658
    //~^ ERROR E0059
    G: Fn<(i32, i32, ), Output = (i32, i32)>, //~ ERROR E0658
    H: Fn<(i32,), Output = i32>, //~ ERROR E0658
{
    f(3);
    //~^ ERROR: cannot use call notation
    //~| ERROR: `i32` is not a tuple
    g(3, 4);
    h(3)
}

fn main() {
    e0658( //~ ERROR: mismatched types
        |a| a,
        |a, b| (b, a),
        |a| a,
    );
}