From 0b5bb313cb1c2f552141390ae8e7a649a56a957d Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Tue, 27 Mar 2018 14:12:06 -0700 Subject: [PATCH] Mark CondCode's functions #[must_use]. It's easy to forget whether they mutate the value in place or return a new value. Marking them #[must_use] will catch cases where they are used incorrectly. --- lib/cretonne/src/ir/condcodes.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/cretonne/src/ir/condcodes.rs b/lib/cretonne/src/ir/condcodes.rs index 11c438b10a..61967a5871 100644 --- a/lib/cretonne/src/ir/condcodes.rs +++ b/lib/cretonne/src/ir/condcodes.rs @@ -13,12 +13,14 @@ pub trait CondCode: Copy { /// /// The inverse condition code produces the opposite result for all comparisons. /// That is, `cmp CC, x, y` is true if and only if `cmp CC.inverse(), x, y` is false. + #[must_use] fn inverse(self) -> Self; /// Get the reversed condition code for `self`. /// /// The reversed condition code produces the same result as swapping `x` and `y` in the /// comparison. That is, `cmp CC, x, y` is the same as `cmp CC.reverse(), y, x`. + #[must_use] fn reverse(self) -> Self; }