1 // Test that various non-const items and associated consts do not permit `_` as a name.
3 // Associated `const`s:
6 const _: () = (); //~ ERROR expected identifier, found reserved identifier `_`
9 const _: () = (); //~ ERROR expected identifier, found reserved identifier `_`
12 const _: () = (); //~ ERROR expected identifier, found reserved identifier `_`
15 // Other kinds of items:
17 static _: () = (); //~ ERROR expected identifier, found reserved identifier `_`
18 struct _(); //~ ERROR expected identifier, found reserved identifier `_`
19 enum _ {} //~ ERROR expected identifier, found reserved identifier `_`
20 fn _() {} //~ ERROR expected identifier, found reserved identifier `_`
21 mod _ {} //~ ERROR expected identifier, found reserved identifier `_`
22 type _ = (); //~ ERROR expected identifier, found reserved identifier `_`
23 use _; //~ ERROR expected identifier, found reserved identifier `_`
24 use _ as g; //~ ERROR expected identifier, found reserved identifier `_`
25 trait _ {} //~ ERROR expected identifier, found reserved identifier `_`
26 trait _ = Copy; //~ ERROR expected identifier, found reserved identifier `_`
27 macro_rules! _ { () => {} } //~ ERROR expected identifier, found reserved identifier `_`
28 union _ { f: u8 } //~ ERROR expected one of `!` or `::`, found reserved identifier `_`