mirror of https://github.com/rust-lang/rust
39 lines
1.1 KiB
Rust
39 lines
1.1 KiB
Rust
#![feature(stmt_expr_attributes)]
|
|
|
|
// Test that various placements of the inner attribute are parsed correctly,
|
|
// or not.
|
|
|
|
fn main() {
|
|
let a = #![allow(warnings)] (1, 2);
|
|
//~^ ERROR an inner attribute is not permitted in this context
|
|
|
|
let b = (#![allow(warnings)] 1, 2);
|
|
//~^ ERROR an inner attribute is not permitted in this context
|
|
|
|
let c = {
|
|
#![allow(warnings)]
|
|
(#![allow(warnings)] 1, 2)
|
|
//~^ ERROR an inner attribute is not permitted in this context
|
|
};
|
|
|
|
let d = {
|
|
#![allow(warnings)]
|
|
let e = (#![allow(warnings)] 1, 2);
|
|
//~^ ERROR an inner attribute is not permitted in this context
|
|
e
|
|
};
|
|
|
|
let e = [#![allow(warnings)] 1, 2];
|
|
//~^ ERROR an inner attribute is not permitted in this context
|
|
|
|
let f = [#![allow(warnings)] 1; 0];
|
|
//~^ ERROR an inner attribute is not permitted in this context
|
|
|
|
let g = match true { #![allow(warnings)] _ => {} };
|
|
|
|
|
|
struct MyStruct { field: u8 }
|
|
let h = MyStruct { #![allow(warnings)] field: 0 };
|
|
//~^ ERROR an inner attribute is not permitted in this context
|
|
}
|