// https://github.com/rust-lang/rustfmt/issues/3623 fn foo(#[cfg(something)] x: i32, y: i32) -> i32 { x + y } fn foo_b(#[cfg(something)] x: i32, y: i32) -> i32 { x + y } fn add( #[cfg(something)] #[deny(C)] x: i32, y: i32, ) -> i32 { x + y } struct NamedSelfRefStruct {} impl NamedSelfRefStruct { fn foo(#[cfg(something)] self: &Self) {} } struct MutStruct {} impl MutStruct { fn foo(#[cfg(foo)] &mut self, #[deny(C)] b: i32) {} } fn main() { let c = |#[allow(C)] a: u32, #[cfg(something)] b: i32, #[cfg_attr(something, cfg(nothing))] #[deny(C)] c: i32| {}; let _ = c(1, 2); } pub fn bar( /// bar #[test] a: u32, /// Bar #[must_use] /// Baz #[no_mangle] b: i32, ) { } fn abc( #[foo] #[bar] param: u32, ) { // ... } fn really_really_really_loooooooooooooooooooong( #[cfg(some_even_longer_config_feature_that_keeps_going_and_going_and_going_forever_and_ever_and_ever_on_and_on)] b: i32, ) { // ... }