1 #![feature(tool_lints)]
3 #![feature(box_syntax)]
6 #![warn(clippy::no_effect, clippy::unnecessary_operation)]
8 #![allow(path_statements)]
9 #![allow(clippy::deref_addrof)]
10 #![allow(clippy::redundant_field_names)]
11 #![feature(untagged_unions)]
20 Struct { field: i32 },
23 impl Drop for DropUnit {
29 impl Drop for DropStruct {
32 struct DropTuple(i32);
33 impl Drop for DropTuple {
38 Struct { field: i32 },
40 impl Drop for DropEnum {
51 fn get_number() -> i32 { 0 }
52 fn get_struct() -> Struct { Struct { field: 0 } }
53 fn get_drop_struct() -> DropStruct { DropStruct { field: 0 } }
55 unsafe fn unsafe_fn() -> i32 { 0 }
59 let s2 = get_struct();
69 Enum::Struct { field: 0 };
87 let s: String = "foo".into();
92 unsafe { unsafe_fn() };
94 DropStruct { field: 0 };
97 DropEnum::Struct { field: 0 };
100 Struct { field: get_number() };
101 Struct { ..get_struct() };
102 Enum::Tuple(get_number());
103 Enum::Struct { field: get_number() };
107 (5, 6, get_number());
113 [42, 55][get_number() as usize];
114 (42, get_number()).1;
116 [42; 55][get_number() as usize];
118 FooString { s: String::from("blah"), };
121 DropTuple(get_number());
122 DropStruct { field: get_number() };
123 DropStruct { field: get_number() };
124 DropStruct { ..get_drop_struct() };
125 DropEnum::Tuple(get_number());
126 DropEnum::Struct { field: get_number() };