Auto merge of #10481 - blyxyas:allow_attribute, r=xFrednet

Add `allow_attribute` lint

Fixes #10468

changelog: new lint: [`allow_attributes`]
[#10481](https://github.com/rust-lang/rust-clippy/pull/10481)
This commit is contained in:
bors 2023-03-16 10:18:19 +00:00
commit 5afa93bd8e
7 changed files with 141 additions and 0 deletions

View file

@ -0,0 +1,25 @@
// run-rustfix
#![allow(unused)]
#![warn(clippy::allow_attributes)]
#![feature(lint_reasons)]
fn main() {}
// Using clippy::needless_borrow just as a placeholder, it isn't relevant.
// Should lint
#[expect(dead_code)]
struct T1;
struct T2; // Should not lint
#[deny(clippy::needless_borrow)] // Should not lint
struct T3;
#[warn(clippy::needless_borrow)] // Should not lint
struct T4;
// `panic = "unwind"` should always be true
#[cfg_attr(panic = "unwind", expect(dead_code))]
struct CfgT;
fn ignore_inner_attr() {
#![allow(unused)] // Should not lint
}

View file

@ -0,0 +1,25 @@
// run-rustfix
#![allow(unused)]
#![warn(clippy::allow_attributes)]
#![feature(lint_reasons)]
fn main() {}
// Using clippy::needless_borrow just as a placeholder, it isn't relevant.
// Should lint
#[allow(dead_code)]
struct T1;
struct T2; // Should not lint
#[deny(clippy::needless_borrow)] // Should not lint
struct T3;
#[warn(clippy::needless_borrow)] // Should not lint
struct T4;
// `panic = "unwind"` should always be true
#[cfg_attr(panic = "unwind", allow(dead_code))]
struct CfgT;
fn ignore_inner_attr() {
#![allow(unused)] // Should not lint
}

View file

@ -0,0 +1,16 @@
error: #[allow] attribute found
--> $DIR/allow_attributes.rs:11:3
|
LL | #[allow(dead_code)]
| ^^^^^ help: replace it with: `expect`
|
= note: `-D clippy::allow-attributes` implied by `-D warnings`
error: #[allow] attribute found
--> $DIR/allow_attributes.rs:20:30
|
LL | #[cfg_attr(panic = "unwind", allow(dead_code))]
| ^^^^^ help: replace it with: `expect`
error: aborting due to 2 previous errors