// compile-flags: --emit=link // no-prefer-dynamic #![crate_type = "proc-macro"] #![feature(repr128, proc_macro_quote)] #![allow(incomplete_features)] extern crate proc_macro; use proc_macro::{quote, TokenStream}; #[proc_macro_derive(DeriveSomething)] pub fn derive(_: TokenStream) -> TokenStream { // Shound not trigger `used_underscore_binding` let _inside_derive = 1; assert_eq!(_inside_derive, _inside_derive); let output = quote! { // Should not trigger `useless_attribute` #[allow(dead_code)] extern crate rustc_middle; }; output }