57e8fc5685
This commit modifies `check_attr` so that: - Enum variants are now checked (some attributes would not have been prohibited on variants previously). - `check_expr_attributes` and `check_stmt_attributes` are removed as `check_attributes` can perform the same checks. Signed-off-by: David Wood <david@davidtw.co>
36 lines
917 B
Plaintext
36 lines
917 B
Plaintext
error[E0517]: attribute should be applied to a struct, enum, or union
|
|
--> $DIR/attr-usage-repr.rs:3:8
|
|
|
|
|
LL | #[repr(C)]
|
|
| ^
|
|
LL | fn f() {}
|
|
| --------- not a struct, enum, or union
|
|
|
|
error[E0517]: attribute should be applied to an enum
|
|
--> $DIR/attr-usage-repr.rs:15:8
|
|
|
|
|
LL | #[repr(i8)]
|
|
| ^^
|
|
LL | struct SInt(f64, f64);
|
|
| ---------------------- not an enum
|
|
|
|
error[E0517]: attribute should be applied to a struct or union
|
|
--> $DIR/attr-usage-repr.rs:24:8
|
|
|
|
|
LL | #[repr(packed)]
|
|
| ^^^^^^
|
|
LL | enum EPacked { A, B }
|
|
| --------------------- not a struct or union
|
|
|
|
error[E0517]: attribute should be applied to a struct
|
|
--> $DIR/attr-usage-repr.rs:27:8
|
|
|
|
|
LL | #[repr(simd)]
|
|
| ^^^^
|
|
LL | enum ESimd { A, B }
|
|
| ------------------- not a struct
|
|
|
|
error: aborting due to 4 previous errors
|
|
|
|
For more information about this error, try `rustc --explain E0517`.
|