有时候,您想暂时隐藏clippy警告,并通过添加如下代码行,让clippy忽略特定代码块的特定规则:
# [allow(dead_code)]
但是随着项目的继续,可能会发生这样的情况:您删除了这个问题,而实际上并没有删除clippy lint的允许。那么,有没有办法检查允许的clippy警告是否实际上已经不再使用了呢?所以,在这个例子中,我希望在出现#[allow(dead_code)]时得到通知,但实际上在给定的代码块中并没有发现死代码。
#[allow(dead_code)]
8nuwlpux1#
lint_reasons的不稳定特性(目前只能在使用夜间Rust编译器时使用)包括使用expect(而不是allow(的能力,这允许lint,但如果 * 未 * 检测到lint,则会发出警告。
lint_reasons
expect(
allow(
# ![feature(lint_reasons)] # [expect(dead_code)] fn foo() {} fn main() { foo(); }
输出量:
warning: this lint expectation is unfulfilled --> src/main.rs:3:10 | 3 | #[expect(dead_code)] | ^^^^^^^^^ | = note: `#[warn(unfulfilled_lint_expectations)]` on by default
目前还没有时间表,这使它稳定,但至少人们希望看到它,并有一个实施。
vmpqdwk32#
如果你不希望警告出现,你可以尝试在未使用的函数/变量/等等前面加上_(编译器也会提到这一点)。如果你删除了任何包含前缀的临时/死代码,你就不必担心#![allow(dead_code)]了。
_
#![allow(dead_code)]
2条答案
按热度按时间8nuwlpux1#
lint_reasons
的不稳定特性(目前只能在使用夜间Rust编译器时使用)包括使用expect(
而不是allow(
的能力,这允许lint,但如果 * 未 * 检测到lint,则会发出警告。输出量:
目前还没有时间表,这使它稳定,但至少人们希望看到它,并有一个实施。
vmpqdwk32#
如果你不希望警告出现,你可以尝试在未使用的函数/变量/等等前面加上
_
(编译器也会提到这一点)。如果你删除了任何包含前缀的临时/死代码,你就不必担心#![allow(dead_code)]
了。