Lint path statements to use drop for drop types

This commit is contained in:
Lukas Wirth 2020-08-02 16:30:09 +02:00
parent dfe1e3b641
commit 35d6a2ef2b
3 changed files with 44 additions and 5 deletions

View file

@ -1,6 +1,17 @@
// compile-flags: -D path-statements
fn main() {
struct Droppy;
impl Drop for Droppy {
fn drop(&mut self) {}
}
fn main() {
let x = 10;
x; //~ ERROR path statement with no effect
let y = Droppy;
y; //~ ERROR path statement drops value
let z = (Droppy,);
z; //~ ERROR path statement drops value
}

View file

@ -1,10 +1,22 @@
error: path statement with no effect
--> $DIR/warn-path-statement.rs:5:5
--> $DIR/warn-path-statement.rs:10:5
|
LL | x;
| ^^
|
= note: requested on the command line with `-D path-statements`
error: aborting due to previous error
error: path statement drops value
--> $DIR/warn-path-statement.rs:13:5
|
LL | y;
| ^^ help: use `drop` to clarify the intent: `drop(y);`
error: path statement drops value
--> $DIR/warn-path-statement.rs:16:5
|
LL | z;
| ^^ help: use `drop` to clarify the intent: `drop(z);`
error: aborting due to 3 previous errors