diff --git a/serde_derive/src/de.rs b/serde_derive/src/de.rs index 2dfe87ef..2e86fd86 100644 --- a/serde_derive/src/de.rs +++ b/serde_derive/src/de.rs @@ -1356,9 +1356,7 @@ fn deserialize_internally_tagged_enum( params, variant, cattrs, - quote! { - _serde::__private::de::ContentDeserializer::<__D::Error>::new(__tagged.content) - }, + quote!(__deserializer), )); quote! { @@ -1377,6 +1375,7 @@ fn deserialize_internally_tagged_enum( let __tagged = try!(_serde::Deserializer::deserialize_any( __deserializer, _serde::__private::de::TaggedContentVisitor::<__Field>::new(#tag, #expecting))); + let __deserializer = _serde::__private::de::ContentDeserializer::<__D::Error>::new(__tagged.content); match __tagged.tag { #(#variant_arms)*