| #![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 |
| } |