fn_must_use
The tracking issue for this feature is #43302.
The fn_must_use
feature allows functions and methods to be annotated with
#[must_use]
, indicating that the unused_must_use
lint should require their
return values to be used (similarly to how types annotated with must_use
,
most notably Result
, are linted if not used).
Examples
#![feature(fn_must_use)]
#[must_use]
fn double(x: i32) -> i32 {
2 * x
}
fn main() {
double(4); // warning: unused return value of `double` which must be used
let _ = double(4); // (no warning)
}