diff --git a/serde/src/de/impls.rs b/serde/src/de/impls.rs index 801d9870..d872cbe6 100644 --- a/serde/src/de/impls.rs +++ b/serde/src/de/impls.rs @@ -548,11 +548,11 @@ where //////////////////////////////////////////////////////////////////////////////// -struct PhantomDataVisitor { +struct PhantomDataVisitor { marker: PhantomData, } -impl<'de, T> Visitor<'de> for PhantomDataVisitor { +impl<'de, T: ?Sized> Visitor<'de> for PhantomDataVisitor { type Value = PhantomData; fn expecting(&self, formatter: &mut fmt::Formatter) -> fmt::Result { @@ -568,7 +568,7 @@ impl<'de, T> Visitor<'de> for PhantomDataVisitor { } } -impl<'de, T> Deserialize<'de> for PhantomData { +impl<'de, T: ?Sized> Deserialize<'de> for PhantomData { fn deserialize(deserializer: D) -> Result, D::Error> where D: Deserializer<'de>, diff --git a/serde/src/ser/impls.rs b/serde/src/ser/impls.rs index fcda834d..f62a3b2c 100644 --- a/serde/src/ser/impls.rs +++ b/serde/src/ser/impls.rs @@ -111,7 +111,7 @@ where //////////////////////////////////////////////////////////////////////////////// -impl Serialize for PhantomData { +impl Serialize for PhantomData { #[inline] fn serialize(&self, serializer: S) -> Result where