2023-01-19 15:31:50 +00:00
|
|
|
// force-host
|
|
|
|
// no-prefer-dynamic
|
|
|
|
|
2023-01-03 13:08:20 +00:00
|
|
|
#![crate_type = "proc-macro"]
|
|
|
|
|
|
|
|
extern crate proc_macro;
|
|
|
|
use proc_macro::TokenStream;
|
|
|
|
|
|
|
|
#[proc_macro_attribute]
|
|
|
|
pub fn bad_input(input: String) -> TokenStream {
|
2023-03-14 18:43:37 +00:00
|
|
|
//~^ ERROR attribute proc macro has incorrect signature
|
2023-01-03 13:08:20 +00:00
|
|
|
::proc_macro::TokenStream::new()
|
|
|
|
}
|
|
|
|
|
|
|
|
#[proc_macro_attribute]
|
|
|
|
pub fn bad_output(input: TokenStream) -> String {
|
2023-03-14 18:43:37 +00:00
|
|
|
//~^ ERROR attribute proc macro has incorrect signature
|
2023-01-03 13:08:20 +00:00
|
|
|
String::from("blah")
|
|
|
|
}
|
|
|
|
|
|
|
|
#[proc_macro_attribute]
|
|
|
|
pub fn bad_everything(input: String) -> String {
|
2023-03-14 18:43:37 +00:00
|
|
|
//~^ ERROR attribute proc macro has incorrect signature
|
2023-01-03 13:08:20 +00:00
|
|
|
input
|
|
|
|
}
|
|
|
|
|
|
|
|
#[proc_macro_attribute]
|
|
|
|
pub fn too_many(a: TokenStream, b: TokenStream, c: String) -> TokenStream {
|
2023-03-14 18:43:37 +00:00
|
|
|
//~^ ERROR attribute proc macro has incorrect signature
|
2023-01-03 13:08:20 +00:00
|
|
|
}
|