1 //! Check that we correctly lint procedural macros.
2 #![crate_type = "proc-macro"]
3 
4 extern crate proc_macro;
5 
6 use proc_macro::TokenStream;
7 
8 #[allow(dead_code)]
f()9 fn f() {
10     let _x = 3.14;
11 }
12 
13 #[proc_macro]
mybangmacro(t: TokenStream) -> TokenStream14 pub fn mybangmacro(t: TokenStream) -> TokenStream {
15     t
16 }
17 
18 #[proc_macro_derive(MyDerivedTrait)]
myderive(t: TokenStream) -> TokenStream19 pub fn myderive(t: TokenStream) -> TokenStream {
20     t
21 }
22 
23 #[proc_macro_attribute]
myattribute(t: TokenStream, a: TokenStream) -> TokenStream24 pub fn myattribute(t: TokenStream, a: TokenStream) -> TokenStream {
25     t
26 }
27