Skip to content

Commit f32c8df

Browse files
committed
needless_return: add allow()s to test, make rustfixable
1 parent 24fdea1 commit f32c8df

File tree

3 files changed

+94
-12
lines changed

3 files changed

+94
-12
lines changed

tests/ui/needless_return.fixed

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
// run-rustfix
2+
3+
#![allow(unused, clippy::needless_bool, clippy::match_bool)]
4+
#![allow(clippy::if_same_then_else, clippy::single_match)]
5+
#![warn(clippy::needless_return)]
6+
7+
macro_rules! the_answer {
8+
() => {
9+
42
10+
};
11+
}
12+
13+
fn test_end_of_fn() -> bool {
14+
if true {
15+
// no error!
16+
return true;
17+
}
18+
true
19+
}
20+
21+
fn test_no_semicolon() -> bool {
22+
true
23+
}
24+
25+
fn test_if_block() -> bool {
26+
if true {
27+
true
28+
} else {
29+
false
30+
}
31+
}
32+
33+
fn test_match(x: bool) -> bool {
34+
match x {
35+
true => false,
36+
false => {
37+
true
38+
},
39+
}
40+
}
41+
42+
fn test_closure() {
43+
let _ = || {
44+
true
45+
};
46+
let _ = || true;
47+
}
48+
49+
fn test_macro_call() -> i32 {
50+
return the_answer!();
51+
}
52+
53+
fn test_void_fun() {
54+
55+
}
56+
57+
fn test_void_if_fun(b: bool) {
58+
if b {
59+
60+
} else {
61+
62+
}
63+
}
64+
65+
fn test_void_match(x: u32) {
66+
match x {
67+
0 => (),
68+
_ => {},
69+
}
70+
}
71+
72+
fn main() {
73+
let _ = test_end_of_fn();
74+
let _ = test_no_semicolon();
75+
let _ = test_if_block();
76+
let _ = test_match(true);
77+
test_closure();
78+
}

tests/ui/needless_return.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
// run-rustfix
2+
3+
#![allow(unused, clippy::needless_bool, clippy::match_bool)]
4+
#![allow(clippy::if_same_then_else, clippy::single_match)]
15
#![warn(clippy::needless_return)]
26

37
macro_rules! the_answer {

tests/ui/needless_return.stderr

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,73 +1,73 @@
11
error: unneeded return statement
2-
--> $DIR/needless_return.rs:14:5
2+
--> $DIR/needless_return.rs:18:5
33
|
44
LL | return true;
55
| ^^^^^^^^^^^^ help: remove `return`: `true`
66
|
77
= note: `-D clippy::needless-return` implied by `-D warnings`
88

99
error: unneeded return statement
10-
--> $DIR/needless_return.rs:18:5
10+
--> $DIR/needless_return.rs:22:5
1111
|
1212
LL | return true;
1313
| ^^^^^^^^^^^^ help: remove `return`: `true`
1414

1515
error: unneeded return statement
16-
--> $DIR/needless_return.rs:23:9
16+
--> $DIR/needless_return.rs:27:9
1717
|
1818
LL | return true;
1919
| ^^^^^^^^^^^^ help: remove `return`: `true`
2020

2121
error: unneeded return statement
22-
--> $DIR/needless_return.rs:25:9
22+
--> $DIR/needless_return.rs:29:9
2323
|
2424
LL | return false;
2525
| ^^^^^^^^^^^^^ help: remove `return`: `false`
2626

2727
error: unneeded return statement
28-
--> $DIR/needless_return.rs:31:17
28+
--> $DIR/needless_return.rs:35:17
2929
|
3030
LL | true => return false,
3131
| ^^^^^^^^^^^^ help: remove `return`: `false`
3232

3333
error: unneeded return statement
34-
--> $DIR/needless_return.rs:33:13
34+
--> $DIR/needless_return.rs:37:13
3535
|
3636
LL | return true;
3737
| ^^^^^^^^^^^^ help: remove `return`: `true`
3838

3939
error: unneeded return statement
40-
--> $DIR/needless_return.rs:40:9
40+
--> $DIR/needless_return.rs:44:9
4141
|
4242
LL | return true;
4343
| ^^^^^^^^^^^^ help: remove `return`: `true`
4444

4545
error: unneeded return statement
46-
--> $DIR/needless_return.rs:42:16
46+
--> $DIR/needless_return.rs:46:16
4747
|
4848
LL | let _ = || return true;
4949
| ^^^^^^^^^^^ help: remove `return`: `true`
5050

5151
error: unneeded return statement
52-
--> $DIR/needless_return.rs:50:5
52+
--> $DIR/needless_return.rs:54:5
5353
|
5454
LL | return;
5555
| ^^^^^^^ help: remove `return`
5656

5757
error: unneeded return statement
58-
--> $DIR/needless_return.rs:55:9
58+
--> $DIR/needless_return.rs:59:9
5959
|
6060
LL | return;
6161
| ^^^^^^^ help: remove `return`
6262

6363
error: unneeded return statement
64-
--> $DIR/needless_return.rs:57:9
64+
--> $DIR/needless_return.rs:61:9
6565
|
6666
LL | return;
6767
| ^^^^^^^ help: remove `return`
6868

6969
error: unneeded return statement
70-
--> $DIR/needless_return.rs:64:14
70+
--> $DIR/needless_return.rs:68:14
7171
|
7272
LL | _ => return,
7373
| ^^^^^^ help: replace `return` with an empty block: `{}`

0 commit comments

Comments
 (0)