| //@aux-build:../auxiliary/proc_macro_attr.rs | |
| #![warn(clippy::empty_line_after_outer_attr)] | |
| #![deny(clippy::empty_line_after_doc_comments)] | |
| //~v empty_line_after_outer_attr | |
| #![crate_type = "lib"] | |
| fn first_in_crate() {} | |
| #[macro_use] | |
| extern crate proc_macro_attr; | |
| //~v empty_line_after_outer_attr | |
| #[inline] | |
| /// some comment | |
| fn with_one_newline_and_comment() {} | |
| #[inline] | |
| /// some comment | |
| fn with_no_newline_and_comment() {} | |
| //~v empty_line_after_outer_attr | |
| #[inline] | |
| fn with_one_newline() {} | |
| #[rustfmt::skip] | |
| mod two_lines { | |
| //~v empty_line_after_outer_attr | |
| #![crate_type = "lib"] | |
| fn with_two_newlines() {} | |
| } | |
| //~v empty_line_after_outer_attr | |
| #[doc = "doc attributes should be considered attributes"] | |
| enum Baz { | |
| One, | |
| Two, | |
| } | |
| //~v empty_line_after_outer_attr | |
| #[repr(C)] | |
| struct Foo { | |
| one: isize, | |
| two: isize, | |
| } | |
| //~v empty_line_after_outer_attr | |
| #[allow(dead_code)] | |
| mod foo {} | |
| //~v empty_line_after_outer_attr | |
| #[inline] | |
| // Still lint cases where the empty line does not immediately follow the attribute | |
| fn comment_before_empty_line() {} | |
| //~v empty_line_after_outer_attr | |
| #[allow(unused)] | |
| // This comment is isolated | |
| pub fn isolated_comment() {} | |
| #[doc = " | |
| Returns the escaped value of the textual representation of | |
| "] | |
| pub fn function() -> bool { | |
| true | |
| } | |
| #[derive(Clone, Copy)] | |
| pub enum FooFighter { | |
| Bar1, | |
| Bar2, | |
| Bar3, | |
| Bar4, | |
| } | |
| #[crate_type = "lib"] | |
| /* | |
| */ | |
| pub struct EmptyLineInBlockComment; | |
| #[crate_type = "lib"] | |
| /* test */ | |
| pub struct BlockComment; | |
| // See https://github.com/rust-lang/rust-clippy/issues/5567 | |
| #[rustfmt::skip] | |
| #[fake_async_trait] | |
| pub trait Bazz { | |
| fn foo() -> Vec<u8> { | |
| let _i = ""; | |
| vec![] | |
| } | |
| } | |
| #[derive(Clone, Copy)] | |
| #[dummy(string = "first line | |
| second line | |
| ")] | |
| pub struct Args; | |
| mod issue_14980 { | |
| //~v empty_line_after_outer_attr | |
| #[repr(align(536870912))] | |
| enum Aligned { | |
| Zero = 0, | |
| One = 1, | |
| } | |
| } | |
| fn main() {} |