#![feature(extern_types)] #![feature(impl_trait_in_assoc_type)] #![warn(unused_attributes)] trait Trait { #[inline] //~ WARN `#[inline]` is ignored on constants //~^ WARN this was previously accepted const X: u32; #[inline] //~ ERROR attribute should be applied to function or closure type T; type U; } impl Trait for () { #[inline] //~ WARN `#[inline]` is ignored on constants //~^ WARN this was previously accepted const X: u32 = 0; #[inline] //~ ERROR attribute should be applied to function or closure type T = Self; #[inline] //~ ERROR attribute should be applied to function or closure type U = impl Trait; //~ ERROR unconstrained opaque type } extern "C" { #[inline] //~ ERROR attribute should be applied to function or closure static X: u32; #[inline] //~ ERROR attribute should be applied to function or closure type T; } fn main() {}