diff --git a/src/test/ui/rfc_1940-must_use_on_functions/fn_must_use.rs b/src/test/ui/rfc_1940-must_use_on_functions/fn_must_use.rs index 821cd30c8df4..3741ba4f3ae7 100644 --- a/src/test/ui/rfc_1940-must_use_on_functions/fn_must_use.rs +++ b/src/test/ui/rfc_1940-must_use_on_functions/fn_must_use.rs @@ -11,6 +11,7 @@ #![feature(fn_must_use)] #![warn(unused_must_use)] +#[derive(PartialEq, Eq)] struct MyStruct { n: usize, } @@ -58,12 +59,18 @@ fn main() { need_to_use_this_value(); let mut m = MyStruct { n: 2 }; + let n = MyStruct { n: 3 }; + m.need_to_use_this_method_value(); m.is_even(); // trait method! m.replace(3); // won't warn (annotation needs to be in trait definition) - 2.eq(&3); // comparison methods are `must_use` + // comparison methods are `must_use` + 2.eq(&3); + m.eq(&n); - 2 == 3; // lint includes comparison operators + // lint includes comparison operators + 2 == 3; + m == n; } diff --git a/src/test/ui/rfc_1940-must_use_on_functions/fn_must_use.stderr b/src/test/ui/rfc_1940-must_use_on_functions/fn_must_use.stderr index 7fc0a4ce1edc..fdd0a591bc78 100644 --- a/src/test/ui/rfc_1940-must_use_on_functions/fn_must_use.stderr +++ b/src/test/ui/rfc_1940-must_use_on_functions/fn_must_use.stderr @@ -1,7 +1,7 @@ warning: unused return value of `need_to_use_this_value` which must be used: it's important - --> $DIR/fn_must_use.rs:58:5 + --> $DIR/fn_must_use.rs:59:5 | -58 | need_to_use_this_value(); +59 | need_to_use_this_value(); | ^^^^^^^^^^^^^^^^^^^^^^^^^ | note: lint level defined here @@ -11,26 +11,38 @@ note: lint level defined here | ^^^^^^^^^^^^^^^ warning: unused return value of `MyStruct::need_to_use_this_method_value` which must be used - --> $DIR/fn_must_use.rs:61:5 + --> $DIR/fn_must_use.rs:64:5 | -61 | m.need_to_use_this_method_value(); +64 | m.need_to_use_this_method_value(); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ warning: unused return value of `EvenNature::is_even` which must be used: no side effects - --> $DIR/fn_must_use.rs:62:5 + --> $DIR/fn_must_use.rs:65:5 | -62 | m.is_even(); // trait method! +65 | m.is_even(); // trait method! | ^^^^^^^^^^^^ warning: unused return value of `std::cmp::PartialEq::eq` which must be used - --> $DIR/fn_must_use.rs:66:5 + --> $DIR/fn_must_use.rs:70:5 | -66 | 2.eq(&3); // comparison methods are `must_use` +70 | 2.eq(&3); + | ^^^^^^^^^ + +warning: unused return value of `std::cmp::PartialEq::eq` which must be used + --> $DIR/fn_must_use.rs:71:5 + | +71 | m.eq(&n); | ^^^^^^^^^ warning: unused comparison which must be used - --> $DIR/fn_must_use.rs:68:5 + --> $DIR/fn_must_use.rs:74:5 | -68 | 2 == 3; // lint includes comparison operators +74 | 2 == 3; + | ^^^^^^ + +warning: unused comparison which must be used + --> $DIR/fn_must_use.rs:75:5 + | +75 | m == n; | ^^^^^^