summaryrefslogtreecommitdiffstats
path: root/src/test/ui/argument-suggestions/basic.rs
blob: 3e96322d67efb815cbf227a383db2b0e0d4afd23 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// Some basic "obvious" cases for the heuristic error messages added for #65853
// One for each of the detected cases

enum E { X, Y }
enum F { X2, Y2 }
struct G {}
struct H {}
struct X {}
struct Y {}
struct Z {}


fn invalid(_i: u32) {}
fn extra() {}
fn missing(_i: u32) {}
fn swapped(_i: u32, _s: &str) {}
fn permuted(_x: X, _y: Y, _z: Z) {}

fn main() {
    invalid(1.0); //~ ERROR mismatched types
    extra(""); //~ ERROR this function takes
    missing(); //~ ERROR this function takes
    swapped("", 1); //~ ERROR arguments to this function are incorrect
    permuted(Y {}, Z {}, X {}); //~ ERROR arguments to this function are incorrect

    let closure = |x| x;
    closure(); //~ ERROR this function takes
}