summaryrefslogtreecommitdiffstats
path: root/tests/ui/feature-gates/issue-43106-gating-of-macro_use.rs
blob: 6a7ef793924a4f56670784e2f77b3e70d11c9570 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// This is just a check-list of the cases where feeding arguments to
// `#[macro_use]` is rejected. (The cases where no error is emitted
// corresponds to cases where the attribute is currently unused, so we
// get that warning; see issue-43106-gating-of-builtin-attrs.rs

#![macro_use(my_macro)]
//~^ ERROR arguments to `macro_use` are not allowed here

#[macro_use(my_macro)]
//~^ ERROR arguments to `macro_use` are not allowed here
mod macro_escape {
    mod inner { #![macro_use(my_macro)] }
    //~^ ERROR arguments to `macro_use` are not allowed here

    #[macro_use = "2700"] struct S;
    //~^ ERROR malformed `macro_use` attribute

    #[macro_use] fn f() { }

    #[macro_use] type T = S;

    #[macro_use] impl S { }
}

fn main() { }