“货物检查”给出了仅用于测试的功能的死代码警告

时间:2017-10-12 01:28:57

标签: rust compiler-warnings rust-cargo

在以下代码中:

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以这种方式行事?

0 个答案:

没有答案