about summary refs log tree commit diff
path: root/src/tools/clippy/tests/ui/formatting.rs
blob: 312fa2aa40ad2cb51d2fc65ef31cf88aa8144be1 (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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#![warn(clippy::all)]
#![allow(unused_variables)]
#![allow(unused_assignments)]
#![allow(clippy::if_same_then_else)]
#![allow(clippy::deref_addrof)]
#![allow(clippy::nonminimal_bool)]

fn foo() -> bool {
    true
}

#[rustfmt::skip]
fn main() {
    // weird op_eq formatting:
    let mut a = 42;
    a =- 35;
    //~^ ERROR: this looks like you are trying to use `.. -= ..`, but you really are doing
    //~| NOTE: to remove this lint, use either `-=` or `= -`
    a =* &191;
    //~^ ERROR: this looks like you are trying to use `.. *= ..`, but you really are doing
    //~| NOTE: to remove this lint, use either `*=` or `= *`

    let mut b = true;
    b =! false;
    //~^ ERROR: this looks like you are trying to use `.. != ..`, but you really are doing
    //~| NOTE: to remove this lint, use either `!=` or `= !`

    // those are ok:
    a = -35;
    a = *&191;
    b = !false;

    // possible missing comma in an array
    let _ = &[
        -1, -2, -3 // <= no comma here
        //~^ ERROR: possibly missing a comma here
        //~| NOTE: to remove this lint, add a comma or write the expr in a single line
        -4, -5, -6
    ];
    let _ = &[
        -1, -2, -3 // <= no comma here
        //~^ ERROR: possibly missing a comma here
        //~| NOTE: to remove this lint, add a comma or write the expr in a single line
        *4, -5, -6
    ];

    // those are ok:
    let _ = &[
        -1, -2, -3,
        -4, -5, -6
    ];
    let _ = &[
        -1, -2, -3,
        -4, -5, -6,
    ];
    let _ = &[
        1 + 2, 3 +
        4, 5 + 6,
    ];

    // don't lint for bin op without unary equiv
    // issue 3244
    vec![
        1
        / 2,
    ];
    // issue 3396
    vec![
        true
        | false,
    ];

    // don't lint if the indentation suggests not to
    let _ = &[
        1 + 2, 3
                - 4, 5
    ];
    // lint if it doesn't
    let _ = &[
        -1
        //~^ ERROR: possibly missing a comma here
        //~| NOTE: to remove this lint, add a comma or write the expr in a single line
        -4,
    ];
}