diff options
Diffstat (limited to 'src/tools/clippy/mini-macro/src/lib.rs')
| -rw-r--r-- | src/tools/clippy/mini-macro/src/lib.rs | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/tools/clippy/mini-macro/src/lib.rs b/src/tools/clippy/mini-macro/src/lib.rs new file mode 100644 index 00000000000..92b6f701555 --- /dev/null +++ b/src/tools/clippy/mini-macro/src/lib.rs @@ -0,0 +1,26 @@ +#![feature(proc_macro_quote, proc_macro_hygiene)] +#![deny(rust_2018_idioms)] +// FIXME: Remove this attribute once the weird failure is gone. +#![allow(unused_extern_crates)] +extern crate proc_macro; + +use proc_macro::{quote, TokenStream}; + +#[proc_macro_derive(ClippyMiniMacroTest)] +pub fn mini_macro(_: TokenStream) -> TokenStream { + quote!( + #[allow(unused)] + fn needless_take_by_value(s: String) { + println!("{}", s.len()); + } + #[allow(unused)] + fn needless_loop(items: &[u8]) { + for i in 0..items.len() { + println!("{}", items[i]); + } + } + fn line_wrapper() { + println!("{}", line!()); + } + ) +} |
