在以下代码中:
mod foo {
pub fn bar() -> i32 { 42 }
}
#[cfg(test)]
mod tests {
use foo;
#[test]
fn test_bar() {
assert_eq!(42, foo::bar());
}
}
fn main() {}
函数bar()
仅供测试代码使用。
cargo check
为此代码提供了死代码警告:
warning: function is never used: `bar`
--> src/main.rs:2:5
|
2 | pub fn bar() -> i32 { 42 }
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: #[warn(dead_code)] on by default
我发现“死代码”警告通常很有用,但我只希望它们是为真正未使用的函数生成的,包括测试代码。有没有办法让cargo check
以这种方式行事?