From b49bd52a53ca04edce6fe6b57a4e3f08c186780a Mon Sep 17 00:00:00 2001 From: David Tolnay Date: Thu, 6 Sep 2018 21:14:18 -0700 Subject: [PATCH] Use parse_macro_input to report parse errors --- serde_derive/src/lib.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/serde_derive/src/lib.rs b/serde_derive/src/lib.rs index 6876c24a..5d2e5b85 100644 --- a/serde_derive/src/lib.rs +++ b/serde_derive/src/lib.rs @@ -81,7 +81,7 @@ mod try; #[proc_macro_derive(Serialize, attributes(serde))] pub fn derive_serialize(input: TokenStream) -> TokenStream { - let input: DeriveInput = syn::parse(input).unwrap(); + let input = parse_macro_input!(input as DeriveInput); ser::expand_derive_serialize(&input) .unwrap_or_else(compile_error) .into() @@ -89,7 +89,7 @@ pub fn derive_serialize(input: TokenStream) -> TokenStream { #[proc_macro_derive(Deserialize, attributes(serde))] pub fn derive_deserialize(input: TokenStream) -> TokenStream { - let input: DeriveInput = syn::parse(input).unwrap(); + let input = parse_macro_input!(input as DeriveInput); de::expand_derive_deserialize(&input) .unwrap_or_else(compile_error) .into()