UI test cleanup: Extract unnecessary_operation tests
This commit is contained in:
parent
14d2700b6f
commit
7adc8dc956
@ -13,7 +13,7 @@
|
||||
#![feature(box_syntax)]
|
||||
|
||||
|
||||
#![warn(clippy::no_effect, clippy::unnecessary_operation)]
|
||||
#![warn(clippy::no_effect)]
|
||||
#![allow(dead_code)]
|
||||
#![allow(path_statements)]
|
||||
#![allow(clippy::deref_addrof)]
|
||||
@ -105,33 +105,4 @@ fn main() {
|
||||
DropTuple(0);
|
||||
DropEnum::Tuple(0);
|
||||
DropEnum::Struct { field: 0 };
|
||||
|
||||
Tuple(get_number());
|
||||
Struct { field: get_number() };
|
||||
Struct { ..get_struct() };
|
||||
Enum::Tuple(get_number());
|
||||
Enum::Struct { field: get_number() };
|
||||
5 + get_number();
|
||||
*&get_number();
|
||||
&get_number();
|
||||
(5, 6, get_number());
|
||||
box get_number();
|
||||
get_number()..;
|
||||
..get_number();
|
||||
5..get_number();
|
||||
[42, get_number()];
|
||||
[42, 55][get_number() as usize];
|
||||
(42, get_number()).1;
|
||||
[get_number(); 55];
|
||||
[42; 55][get_number() as usize];
|
||||
{get_number()};
|
||||
FooString { s: String::from("blah"), };
|
||||
|
||||
// Do not warn
|
||||
DropTuple(get_number());
|
||||
DropStruct { field: get_number() };
|
||||
DropStruct { field: get_number() };
|
||||
DropStruct { ..get_drop_struct() };
|
||||
DropEnum::Tuple(get_number());
|
||||
DropEnum::Struct { field: get_number() };
|
||||
}
|
||||
|
@ -150,127 +150,5 @@ error: statement with no effect
|
||||
98 | FooString { s: s };
|
||||
| ^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:109:5
|
||||
|
|
||||
109 | Tuple(get_number());
|
||||
| ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
|
||||
= note: `-D clippy::unnecessary-operation` implied by `-D warnings`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:110:5
|
||||
|
|
||||
110 | Struct { field: get_number() };
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:111:5
|
||||
|
|
||||
111 | Struct { ..get_struct() };
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_struct();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:112:5
|
||||
|
|
||||
112 | Enum::Tuple(get_number());
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:113:5
|
||||
|
|
||||
113 | Enum::Struct { field: get_number() };
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:114:5
|
||||
|
|
||||
114 | 5 + get_number();
|
||||
| ^^^^^^^^^^^^^^^^^ help: replace it with: `5;get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:115:5
|
||||
|
|
||||
115 | *&get_number();
|
||||
| ^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:116:5
|
||||
|
|
||||
116 | &get_number();
|
||||
| ^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:117:5
|
||||
|
|
||||
117 | (5, 6, get_number());
|
||||
| ^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `5;6;get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:118:5
|
||||
|
|
||||
118 | box get_number();
|
||||
| ^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:119:5
|
||||
|
|
||||
119 | get_number()..;
|
||||
| ^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:120:5
|
||||
|
|
||||
120 | ..get_number();
|
||||
| ^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:121:5
|
||||
|
|
||||
121 | 5..get_number();
|
||||
| ^^^^^^^^^^^^^^^^ help: replace it with: `5;get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:122:5
|
||||
|
|
||||
122 | [42, get_number()];
|
||||
| ^^^^^^^^^^^^^^^^^^^ help: replace it with: `42;get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:123:5
|
||||
|
|
||||
123 | [42, 55][get_number() as usize];
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `[42, 55];get_number() as usize;`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:124:5
|
||||
|
|
||||
124 | (42, get_number()).1;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `42;get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:125:5
|
||||
|
|
||||
125 | [get_number(); 55];
|
||||
| ^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:126:5
|
||||
|
|
||||
126 | [42; 55][get_number() as usize];
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `[42; 55];get_number() as usize;`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:127:5
|
||||
|
|
||||
127 | {get_number()};
|
||||
| ^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/no_effect.rs:128:5
|
||||
|
|
||||
128 | FooString { s: String::from("blah"), };
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `String::from("blah");`
|
||||
|
||||
error: aborting due to 45 previous errors
|
||||
error: aborting due to 25 previous errors
|
||||
|
||||
|
76
tests/ui/unnecessary_operation.rs
Normal file
76
tests/ui/unnecessary_operation.rs
Normal file
@ -0,0 +1,76 @@
|
||||
// Copyright 2014-2018 The Rust Project Developers. See the COPYRIGHT
|
||||
// file at the top-level directory of this distribution.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
#![feature(box_syntax)]
|
||||
#![allow(clippy::deref_addrof)]
|
||||
#![warn(clippy::unnecessary_operation)]
|
||||
|
||||
struct Tuple(i32);
|
||||
struct Struct {
|
||||
field: i32
|
||||
}
|
||||
enum Enum {
|
||||
Tuple(i32),
|
||||
Struct { field: i32 },
|
||||
}
|
||||
struct DropStruct {
|
||||
field: i32
|
||||
}
|
||||
impl Drop for DropStruct {
|
||||
fn drop(&mut self) {}
|
||||
}
|
||||
struct DropTuple(i32);
|
||||
impl Drop for DropTuple {
|
||||
fn drop(&mut self) {}
|
||||
}
|
||||
enum DropEnum {
|
||||
Tuple(i32),
|
||||
Struct { field: i32 },
|
||||
}
|
||||
impl Drop for DropEnum {
|
||||
fn drop(&mut self) {}
|
||||
}
|
||||
struct FooString {
|
||||
s: String,
|
||||
}
|
||||
|
||||
fn get_number() -> i32 { 0 }
|
||||
fn get_struct() -> Struct { Struct { field: 0 } }
|
||||
fn get_drop_struct() -> DropStruct { DropStruct { field: 0 } }
|
||||
|
||||
fn main() {
|
||||
Tuple(get_number());
|
||||
Struct { field: get_number() };
|
||||
Struct { ..get_struct() };
|
||||
Enum::Tuple(get_number());
|
||||
Enum::Struct { field: get_number() };
|
||||
5 + get_number();
|
||||
*&get_number();
|
||||
&get_number();
|
||||
(5, 6, get_number());
|
||||
box get_number();
|
||||
get_number()..;
|
||||
..get_number();
|
||||
5..get_number();
|
||||
[42, get_number()];
|
||||
[42, 55][get_number() as usize];
|
||||
(42, get_number()).1;
|
||||
[get_number(); 55];
|
||||
[42; 55][get_number() as usize];
|
||||
{get_number()};
|
||||
FooString { s: String::from("blah"), };
|
||||
|
||||
// Do not warn
|
||||
DropTuple(get_number());
|
||||
DropStruct { field: get_number() };
|
||||
DropStruct { field: get_number() };
|
||||
DropStruct { ..get_drop_struct() };
|
||||
DropEnum::Tuple(get_number());
|
||||
DropEnum::Struct { field: get_number() };
|
||||
}
|
124
tests/ui/unnecessary_operation.stderr
Normal file
124
tests/ui/unnecessary_operation.stderr
Normal file
@ -0,0 +1,124 @@
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:48:5
|
||||
|
|
||||
48 | Tuple(get_number());
|
||||
| ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
|
||||
= note: `-D clippy::unnecessary-operation` implied by `-D warnings`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:49:5
|
||||
|
|
||||
49 | Struct { field: get_number() };
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:50:5
|
||||
|
|
||||
50 | Struct { ..get_struct() };
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_struct();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:51:5
|
||||
|
|
||||
51 | Enum::Tuple(get_number());
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:52:5
|
||||
|
|
||||
52 | Enum::Struct { field: get_number() };
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:53:5
|
||||
|
|
||||
53 | 5 + get_number();
|
||||
| ^^^^^^^^^^^^^^^^^ help: replace it with: `5;get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:54:5
|
||||
|
|
||||
54 | *&get_number();
|
||||
| ^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:55:5
|
||||
|
|
||||
55 | &get_number();
|
||||
| ^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:56:5
|
||||
|
|
||||
56 | (5, 6, get_number());
|
||||
| ^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `5;6;get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:57:5
|
||||
|
|
||||
57 | box get_number();
|
||||
| ^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:58:5
|
||||
|
|
||||
58 | get_number()..;
|
||||
| ^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:59:5
|
||||
|
|
||||
59 | ..get_number();
|
||||
| ^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:60:5
|
||||
|
|
||||
60 | 5..get_number();
|
||||
| ^^^^^^^^^^^^^^^^ help: replace it with: `5;get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:61:5
|
||||
|
|
||||
61 | [42, get_number()];
|
||||
| ^^^^^^^^^^^^^^^^^^^ help: replace it with: `42;get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:62:5
|
||||
|
|
||||
62 | [42, 55][get_number() as usize];
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `[42, 55];get_number() as usize;`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:63:5
|
||||
|
|
||||
63 | (42, get_number()).1;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `42;get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:64:5
|
||||
|
|
||||
64 | [get_number(); 55];
|
||||
| ^^^^^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:65:5
|
||||
|
|
||||
65 | [42; 55][get_number() as usize];
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `[42; 55];get_number() as usize;`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:66:5
|
||||
|
|
||||
66 | {get_number()};
|
||||
| ^^^^^^^^^^^^^^^ help: replace it with: `get_number();`
|
||||
|
||||
error: statement can be reduced
|
||||
--> $DIR/unnecessary_operation.rs:67:5
|
||||
|
|
||||
67 | FooString { s: String::from("blah"), };
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `String::from("blah");`
|
||||
|
||||
error: aborting due to 20 previous errors
|
||||
|
Loading…
Reference in New Issue
Block a user