| #![feature(extern_types)] |
| #![feature(no_coverage)] |
| #![feature(type_alias_impl_trait)] |
| #![warn(unused_attributes)] |
| #![no_coverage] |
| //~^ WARN: `#[no_coverage]` does not propagate into items and must be applied to the contained functions directly |
| |
| #[no_coverage] |
| //~^ WARN: `#[no_coverage]` does not propagate into items and must be applied to the contained functions directly |
| trait Trait { |
| #[no_coverage] //~ ERROR `#[no_coverage]` must be applied to coverable code |
| const X: u32; |
| |
| #[no_coverage] //~ ERROR `#[no_coverage]` must be applied to coverable code |
| type T; |
| |
| type U; |
| } |
| |
| #[no_coverage] |
| //~^ WARN: `#[no_coverage]` does not propagate into items and must be applied to the contained functions directly |
| impl Trait for () { |
| const X: u32 = 0; |
| |
| #[no_coverage] //~ ERROR `#[no_coverage]` must be applied to coverable code |
| type T = Self; |
| |
| #[no_coverage] //~ ERROR `#[no_coverage]` must be applied to coverable code |
| type U = impl Trait; //~ ERROR unconstrained opaque type |
| } |
| |
| extern "C" { |
| #[no_coverage] //~ ERROR `#[no_coverage]` must be applied to coverable code |
| static X: u32; |
| |
| #[no_coverage] //~ ERROR `#[no_coverage]` must be applied to coverable code |
| type T; |
| } |
| |
| #[no_coverage] |
| fn main() { |
| #[no_coverage] |
| //~^ WARN `#[no_coverage]` may only be applied to function definitions |
| let _ = (); |
| |
| match () { |
| #[no_coverage] |
| //~^ WARN `#[no_coverage]` may only be applied to function definitions |
| () => (), |
| } |
| |
| #[no_coverage] |
| //~^ WARN `#[no_coverage]` may only be applied to function definitions |
| return (); |
| } |