rust/src/test/ui/issues/issue-43988.rs
Esteban Küber 609ffa1a89 Reword malformed attribute input diagnostics
- Handle empty `cfg_attr` attribute
- Reword empty `derive` attribute error
- Use consistend error message: "malformed `attrname` attribute input"
- Provide suggestions when possible
- Move note/help to label/suggestion
- Use consistent wording "ill-formed" -> "malformed"
- Move diagnostic logic out of parser
2019-05-25 11:55:50 -07:00

39 lines
865 B
Rust

#![feature(stmt_expr_attributes)]
fn main() {
#[inline]
let _a = 4;
//~^^ ERROR attribute should be applied to function or closure
#[inline(XYZ)]
let _b = 4;
//~^^ ERROR attribute should be applied to function or closure
#[repr(nothing)]
let _x = 0;
//~^^ ERROR attribute should not be applied to a statement
#[repr(something_not_real)]
loop {
()
};
//~^^^^ ERROR attribute should not be applied to an expression
#[repr]
let _y = "123";
//~^^ ERROR attribute should not be applied to a statement
//~| ERROR malformed `repr` attribute
fn foo() {}
#[inline(ABC)]
foo();
//~^^ ERROR attribute should be applied to function or closure
let _z = #[repr] 1;
//~^ ERROR attribute should not be applied to an expression
//~| ERROR malformed `repr` attribute
}