mirror of
				https://github.com/rust-lang/rust.git
				synced 2025-10-30 20:44:34 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			31 lines
		
	
	
		
			753 B
		
	
	
	
		
			Rust
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			753 B
		
	
	
	
		
			Rust
		
	
	
	
	
	
| //@ force-host
 | |
| //@ no-prefer-dynamic
 | |
| 
 | |
| #![crate_type = "proc-macro"]
 | |
| 
 | |
| extern crate proc_macro;
 | |
| use proc_macro::TokenStream;
 | |
| 
 | |
| #[proc_macro_derive(Blah)]
 | |
| pub fn bad_input(input: String) -> TokenStream {
 | |
|     //~^ ERROR derive proc macro has incorrect signature
 | |
|     TokenStream::new()
 | |
| }
 | |
| 
 | |
| #[proc_macro_derive(Bleh)]
 | |
| pub fn bad_output(input: TokenStream) -> String {
 | |
|     //~^ ERROR derive proc macro has incorrect signature
 | |
|     String::from("blah")
 | |
| }
 | |
| 
 | |
| #[proc_macro_derive(Bluh)]
 | |
| pub fn bad_everything(input: String) -> String {
 | |
|     //~^ ERROR derive proc macro has incorrect signature
 | |
|     input
 | |
| }
 | |
| 
 | |
| #[proc_macro_derive(Blih)]
 | |
| pub fn too_many(a: TokenStream, b: TokenStream, c: String) -> TokenStream {
 | |
|     //~^ ERROR derive proc macro has incorrect signature
 | |
| }
 | 
