]> git.lizzy.rs Git - rust.git/blob - src/tools/clippy/tests/ui/unnecessary_operation.rs
Rollup merge of #99396 - compiler-errors:missing-tests, r=Mark-Simulacrum
[rust.git] / src / tools / clippy / tests / ui / unnecessary_operation.rs
1 // run-rustfix
2
3 #![feature(box_syntax)]
4 #![allow(clippy::deref_addrof, dead_code, unused, clippy::no_effect)]
5 #![warn(clippy::unnecessary_operation)]
6
7 struct Tuple(i32);
8 struct Struct {
9     field: i32,
10 }
11 enum Enum {
12     Tuple(i32),
13     Struct { field: i32 },
14 }
15 struct DropStruct {
16     field: i32,
17 }
18 impl Drop for DropStruct {
19     fn drop(&mut self) {}
20 }
21 struct DropTuple(i32);
22 impl Drop for DropTuple {
23     fn drop(&mut self) {}
24 }
25 enum DropEnum {
26     Tuple(i32),
27     Struct { field: i32 },
28 }
29 impl Drop for DropEnum {
30     fn drop(&mut self) {}
31 }
32 struct FooString {
33     s: String,
34 }
35
36 fn get_number() -> i32 {
37     0
38 }
39
40 fn get_usize() -> usize {
41     0
42 }
43 fn get_struct() -> Struct {
44     Struct { field: 0 }
45 }
46 fn get_drop_struct() -> DropStruct {
47     DropStruct { field: 0 }
48 }
49
50 fn main() {
51     Tuple(get_number());
52     Struct { field: get_number() };
53     Struct { ..get_struct() };
54     Enum::Tuple(get_number());
55     Enum::Struct { field: get_number() };
56     5 + get_number();
57     *&get_number();
58     &get_number();
59     (5, 6, get_number());
60     box get_number();
61     get_number()..;
62     ..get_number();
63     5..get_number();
64     [42, get_number()];
65     [42, 55][get_usize()];
66     (42, get_number()).1;
67     [get_number(); 55];
68     [42; 55][get_usize()];
69     {
70         get_number()
71     };
72     FooString {
73         s: String::from("blah"),
74     };
75
76     // Do not warn
77     DropTuple(get_number());
78     DropStruct { field: get_number() };
79     DropStruct { field: get_number() };
80     DropStruct { ..get_drop_struct() };
81     DropEnum::Tuple(get_number());
82     DropEnum::Struct { field: get_number() };
83 }