Skip to content

Commit 00ed705

Browse files
bors[bot]phansch
andcommitted
Merge #3373
3373: UI test cleanup: Extract unnecessary_operation tests r=matthiaskrgr a=phansch cc #2038 Co-authored-by: Philipp Hansch <dev@phansch.net>
2 parents a791bf8 + 7adc8dc commit 00ed705

File tree

4 files changed

+202
-153
lines changed

4 files changed

+202
-153
lines changed

tests/ui/no_effect.rs

+1-30
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
#![feature(box_syntax)]
1414

1515

16-
#![warn(clippy::no_effect, clippy::unnecessary_operation)]
16+
#![warn(clippy::no_effect)]
1717
#![allow(dead_code)]
1818
#![allow(path_statements)]
1919
#![allow(clippy::deref_addrof)]
@@ -105,33 +105,4 @@ fn main() {
105105
DropTuple(0);
106106
DropEnum::Tuple(0);
107107
DropEnum::Struct { field: 0 };
108-
109-
Tuple(get_number());
110-
Struct { field: get_number() };
111-
Struct { ..get_struct() };
112-
Enum::Tuple(get_number());
113-
Enum::Struct { field: get_number() };
114-
5 + get_number();
115-
*&get_number();
116-
&get_number();
117-
(5, 6, get_number());
118-
box get_number();
119-
get_number()..;
120-
..get_number();
121-
5..get_number();
122-
[42, get_number()];
123-
[42, 55][get_number() as usize];
124-
(42, get_number()).1;
125-
[get_number(); 55];
126-
[42; 55][get_number() as usize];
127-
{get_number()};
128-
FooString { s: String::from("blah"), };
129-
130-
// Do not warn
131-
DropTuple(get_number());
132-
DropStruct { field: get_number() };
133-
DropStruct { field: get_number() };
134-
DropStruct { ..get_drop_struct() };
135-
DropEnum::Tuple(get_number());
136-
DropEnum::Struct { field: get_number() };
137108
}

tests/ui/no_effect.stderr

+1-123
Original file line numberDiff line numberDiff line change
@@ -150,127 +150,5 @@ error: statement with no effect
150150
98 | FooString { s: s };
151151
| ^^^^^^^^^^^^^^^^^^^
152152

153-
error: statement can be reduced
154-
--> $DIR/no_effect.rs:109:5
155-
|
156-
109 | Tuple(get_number());
157-
| ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
158-
|
159-
= note: `-D clippy::unnecessary-operation` implied by `-D warnings`
160-
161-
error: statement can be reduced
162-
--> $DIR/no_effect.rs:110:5
163-
|
164-
110 | Struct { field: get_number() };
165-
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
166-
167-
error: statement can be reduced
168-
--> $DIR/no_effect.rs:111:5
169-
|
170-
111 | Struct { ..get_struct() };
171-
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_struct();`
172-
173-
error: statement can be reduced
174-
--> $DIR/no_effect.rs:112:5
175-
|
176-
112 | Enum::Tuple(get_number());
177-
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
178-
179-
error: statement can be reduced
180-
--> $DIR/no_effect.rs:113:5
181-
|
182-
113 | Enum::Struct { field: get_number() };
183-
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
184-
185-
error: statement can be reduced
186-
--> $DIR/no_effect.rs:114:5
187-
|
188-
114 | 5 + get_number();
189-
| ^^^^^^^^^^^^^^^^^ help: replace it with: `5;get_number();`
190-
191-
error: statement can be reduced
192-
--> $DIR/no_effect.rs:115:5
193-
|
194-
115 | *&get_number();
195-
| ^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
196-
197-
error: statement can be reduced
198-
--> $DIR/no_effect.rs:116:5
199-
|
200-
116 | &get_number();
201-
| ^^^^^^^^^^^^^^ help: replace it with: `get_number();`
202-
203-
error: statement can be reduced
204-
--> $DIR/no_effect.rs:117:5
205-
|
206-
117 | (5, 6, get_number());
207-
| ^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `5;6;get_number();`
208-
209-
error: statement can be reduced
210-
--> $DIR/no_effect.rs:118:5
211-
|
212-
118 | box get_number();
213-
| ^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
214-
215-
error: statement can be reduced
216-
--> $DIR/no_effect.rs:119:5
217-
|
218-
119 | get_number()..;
219-
| ^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
220-
221-
error: statement can be reduced
222-
--> $DIR/no_effect.rs:120:5
223-
|
224-
120 | ..get_number();
225-
| ^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
226-
227-
error: statement can be reduced
228-
--> $DIR/no_effect.rs:121:5
229-
|
230-
121 | 5..get_number();
231-
| ^^^^^^^^^^^^^^^^ help: replace it with: `5;get_number();`
232-
233-
error: statement can be reduced
234-
--> $DIR/no_effect.rs:122:5
235-
|
236-
122 | [42, get_number()];
237-
| ^^^^^^^^^^^^^^^^^^^ help: replace it with: `42;get_number();`
238-
239-
error: statement can be reduced
240-
--> $DIR/no_effect.rs:123:5
241-
|
242-
123 | [42, 55][get_number() as usize];
243-
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `[42, 55];get_number() as usize;`
244-
245-
error: statement can be reduced
246-
--> $DIR/no_effect.rs:124:5
247-
|
248-
124 | (42, get_number()).1;
249-
| ^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `42;get_number();`
250-
251-
error: statement can be reduced
252-
--> $DIR/no_effect.rs:125:5
253-
|
254-
125 | [get_number(); 55];
255-
| ^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
256-
257-
error: statement can be reduced
258-
--> $DIR/no_effect.rs:126:5
259-
|
260-
126 | [42; 55][get_number() as usize];
261-
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `[42; 55];get_number() as usize;`
262-
263-
error: statement can be reduced
264-
--> $DIR/no_effect.rs:127:5
265-
|
266-
127 | {get_number()};
267-
| ^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
268-
269-
error: statement can be reduced
270-
--> $DIR/no_effect.rs:128:5
271-
|
272-
128 | FooString { s: String::from("blah"), };
273-
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `String::from("blah");`
274-
275-
error: aborting due to 45 previous errors
153+
error: aborting due to 25 previous errors
276154

tests/ui/unnecessary_operation.rs

+76
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
// Copyright 2014-2018 The Rust Project Developers. See the COPYRIGHT
2+
// file at the top-level directory of this distribution.
3+
//
4+
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
5+
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
6+
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
7+
// option. This file may not be copied, modified, or distributed
8+
// except according to those terms.
9+
10+
#![feature(box_syntax)]
11+
#![allow(clippy::deref_addrof)]
12+
#![warn(clippy::unnecessary_operation)]
13+
14+
struct Tuple(i32);
15+
struct Struct {
16+
field: i32
17+
}
18+
enum Enum {
19+
Tuple(i32),
20+
Struct { field: i32 },
21+
}
22+
struct DropStruct {
23+
field: i32
24+
}
25+
impl Drop for DropStruct {
26+
fn drop(&mut self) {}
27+
}
28+
struct DropTuple(i32);
29+
impl Drop for DropTuple {
30+
fn drop(&mut self) {}
31+
}
32+
enum DropEnum {
33+
Tuple(i32),
34+
Struct { field: i32 },
35+
}
36+
impl Drop for DropEnum {
37+
fn drop(&mut self) {}
38+
}
39+
struct FooString {
40+
s: String,
41+
}
42+
43+
fn get_number() -> i32 { 0 }
44+
fn get_struct() -> Struct { Struct { field: 0 } }
45+
fn get_drop_struct() -> DropStruct { DropStruct { field: 0 } }
46+
47+
fn main() {
48+
Tuple(get_number());
49+
Struct { field: get_number() };
50+
Struct { ..get_struct() };
51+
Enum::Tuple(get_number());
52+
Enum::Struct { field: get_number() };
53+
5 + get_number();
54+
*&get_number();
55+
&get_number();
56+
(5, 6, get_number());
57+
box get_number();
58+
get_number()..;
59+
..get_number();
60+
5..get_number();
61+
[42, get_number()];
62+
[42, 55][get_number() as usize];
63+
(42, get_number()).1;
64+
[get_number(); 55];
65+
[42; 55][get_number() as usize];
66+
{get_number()};
67+
FooString { s: String::from("blah"), };
68+
69+
// Do not warn
70+
DropTuple(get_number());
71+
DropStruct { field: get_number() };
72+
DropStruct { field: get_number() };
73+
DropStruct { ..get_drop_struct() };
74+
DropEnum::Tuple(get_number());
75+
DropEnum::Struct { field: get_number() };
76+
}

tests/ui/unnecessary_operation.stderr

+124
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,124 @@
1+
error: statement can be reduced
2+
--> $DIR/unnecessary_operation.rs:48:5
3+
|
4+
48 | Tuple(get_number());
5+
| ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
6+
|
7+
= note: `-D clippy::unnecessary-operation` implied by `-D warnings`
8+
9+
error: statement can be reduced
10+
--> $DIR/unnecessary_operation.rs:49:5
11+
|
12+
49 | Struct { field: get_number() };
13+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
14+
15+
error: statement can be reduced
16+
--> $DIR/unnecessary_operation.rs:50:5
17+
|
18+
50 | Struct { ..get_struct() };
19+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_struct();`
20+
21+
error: statement can be reduced
22+
--> $DIR/unnecessary_operation.rs:51:5
23+
|
24+
51 | Enum::Tuple(get_number());
25+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
26+
27+
error: statement can be reduced
28+
--> $DIR/unnecessary_operation.rs:52:5
29+
|
30+
52 | Enum::Struct { field: get_number() };
31+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
32+
33+
error: statement can be reduced
34+
--> $DIR/unnecessary_operation.rs:53:5
35+
|
36+
53 | 5 + get_number();
37+
| ^^^^^^^^^^^^^^^^^ help: replace it with: `5;get_number();`
38+
39+
error: statement can be reduced
40+
--> $DIR/unnecessary_operation.rs:54:5
41+
|
42+
54 | *&get_number();
43+
| ^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
44+
45+
error: statement can be reduced
46+
--> $DIR/unnecessary_operation.rs:55:5
47+
|
48+
55 | &get_number();
49+
| ^^^^^^^^^^^^^^ help: replace it with: `get_number();`
50+
51+
error: statement can be reduced
52+
--> $DIR/unnecessary_operation.rs:56:5
53+
|
54+
56 | (5, 6, get_number());
55+
| ^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `5;6;get_number();`
56+
57+
error: statement can be reduced
58+
--> $DIR/unnecessary_operation.rs:57:5
59+
|
60+
57 | box get_number();
61+
| ^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
62+
63+
error: statement can be reduced
64+
--> $DIR/unnecessary_operation.rs:58:5
65+
|
66+
58 | get_number()..;
67+
| ^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
68+
69+
error: statement can be reduced
70+
--> $DIR/unnecessary_operation.rs:59:5
71+
|
72+
59 | ..get_number();
73+
| ^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
74+
75+
error: statement can be reduced
76+
--> $DIR/unnecessary_operation.rs:60:5
77+
|
78+
60 | 5..get_number();
79+
| ^^^^^^^^^^^^^^^^ help: replace it with: `5;get_number();`
80+
81+
error: statement can be reduced
82+
--> $DIR/unnecessary_operation.rs:61:5
83+
|
84+
61 | [42, get_number()];
85+
| ^^^^^^^^^^^^^^^^^^^ help: replace it with: `42;get_number();`
86+
87+
error: statement can be reduced
88+
--> $DIR/unnecessary_operation.rs:62:5
89+
|
90+
62 | [42, 55][get_number() as usize];
91+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `[42, 55];get_number() as usize;`
92+
93+
error: statement can be reduced
94+
--> $DIR/unnecessary_operation.rs:63:5
95+
|
96+
63 | (42, get_number()).1;
97+
| ^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `42;get_number();`
98+
99+
error: statement can be reduced
100+
--> $DIR/unnecessary_operation.rs:64:5
101+
|
102+
64 | [get_number(); 55];
103+
| ^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
104+
105+
error: statement can be reduced
106+
--> $DIR/unnecessary_operation.rs:65:5
107+
|
108+
65 | [42; 55][get_number() as usize];
109+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `[42; 55];get_number() as usize;`
110+
111+
error: statement can be reduced
112+
--> $DIR/unnecessary_operation.rs:66:5
113+
|
114+
66 | {get_number()};
115+
| ^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
116+
117+
error: statement can be reduced
118+
--> $DIR/unnecessary_operation.rs:67:5
119+
|
120+
67 | FooString { s: String::from("blah"), };
121+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `String::from("blah");`
122+
123+
error: aborting due to 20 previous errors
124+

0 commit comments

Comments
 (0)