@@ -428,7 +428,7 @@ impl<'de, 'u, 'f> Deserializer<'de> for ValueDeserializer<'_, 'u, 'f> {
428428 where
429429 V : Visitor < ' de > ,
430430 {
431- let span = self . value . span ( ) ;
431+ let span = self . value . span ( ) . clone ( ) ;
432432 self . value . broadcast_end_mark ( ) ;
433433 if super :: should_short_circuit_any ( self . field_transformer . is_some ( ) ) {
434434 // SAFETY: self.unused_key_callback and self.field_transformer are
@@ -477,7 +477,7 @@ impl<'de, 'u, 'f> Deserializer<'de> for ValueDeserializer<'_, 'u, 'f> {
477477 self . maybe_apply_transformation ( ) ?;
478478 maybe_expecting_should_be ! ( self , deserialize_bool, visitor) ;
479479
480- let span = self . value . span ( ) ;
480+ let span = self . value . span ( ) . clone ( ) ;
481481 self . value . broadcast_end_mark ( ) ;
482482 match self . value . untag ( ) {
483483 Value :: Bool ( v, ..) => visitor. visit_bool ( v) ,
@@ -603,7 +603,7 @@ impl<'de, 'u, 'f> Deserializer<'de> for ValueDeserializer<'_, 'u, 'f> {
603603 self . maybe_apply_transformation ( ) ?;
604604 maybe_expecting_should_be ! ( self , deserialize_string, visitor) ;
605605
606- let span = self . value . span ( ) ;
606+ let span = self . value . span ( ) . clone ( ) ;
607607 self . value . broadcast_end_mark ( ) ;
608608 match self . value . untag ( ) {
609609 Value :: String ( v, ..) => visitor. visit_string ( v) ,
@@ -626,7 +626,7 @@ impl<'de, 'u, 'f> Deserializer<'de> for ValueDeserializer<'_, 'u, 'f> {
626626 self . maybe_apply_transformation ( ) ?;
627627 maybe_expecting_should_be ! ( self , deserialize_byte_buf, visitor) ;
628628
629- let span = self . value . span ( ) ;
629+ let span = self . value . span ( ) . clone ( ) ;
630630 self . value . broadcast_end_mark ( ) ;
631631 match self . value . untag ( ) {
632632 Value :: String ( v, ..) => visitor. visit_string ( v) ,
@@ -649,7 +649,7 @@ impl<'de, 'u, 'f> Deserializer<'de> for ValueDeserializer<'_, 'u, 'f> {
649649 self . maybe_apply_transformation ( ) ?;
650650 maybe_expecting_should_be ! ( self , deserialize_option, visitor) ;
651651
652- let span = self . value . span ( ) ;
652+ let span = self . value . span ( ) . clone ( ) ;
653653 match self . value {
654654 Value :: Null ( ..) => visitor. visit_unit ( ) ,
655655 _ => visitor. visit_some ( ValueDeserializer {
@@ -670,7 +670,7 @@ impl<'de, 'u, 'f> Deserializer<'de> for ValueDeserializer<'_, 'u, 'f> {
670670 self . maybe_apply_transformation ( ) ?;
671671 maybe_expecting_should_be ! ( self , deserialize_unit, visitor) ;
672672
673- let span = self . value . span ( ) ;
673+ let span = self . value . span ( ) . clone ( ) ;
674674 self . value . broadcast_end_mark ( ) ;
675675 match self . value {
676676 Value :: Null ( ..) => visitor. visit_unit ( ) ,
@@ -697,7 +697,7 @@ impl<'de, 'u, 'f> Deserializer<'de> for ValueDeserializer<'_, 'u, 'f> {
697697 self . maybe_apply_transformation ( ) ?;
698698 maybe_expecting_should_be ! ( self , deserialize_newtype_struct, name, visitor) ;
699699
700- let span = self . value . span ( ) ;
700+ let span = self . value . span ( ) . clone ( ) ;
701701 self . value . broadcast_end_mark ( ) ;
702702 visitor
703703 . visit_newtype_struct ( self )
@@ -711,7 +711,7 @@ impl<'de, 'u, 'f> Deserializer<'de> for ValueDeserializer<'_, 'u, 'f> {
711711 self . maybe_apply_transformation ( ) ?;
712712 maybe_expecting_should_be ! ( self , deserialize_seq, visitor) ;
713713
714- let span = self . value . span ( ) ;
714+ let span = self . value . span ( ) . clone ( ) ;
715715 self . value . broadcast_end_mark ( ) ;
716716 match self . value . untag ( ) {
717717 Value :: Sequence ( v, ..) => visit_sequence (
@@ -759,7 +759,7 @@ impl<'de, 'u, 'f> Deserializer<'de> for ValueDeserializer<'_, 'u, 'f> {
759759 self . maybe_apply_transformation ( ) ?;
760760 maybe_expecting_should_be ! ( self , deserialize_map, visitor) ;
761761
762- let span = self . value . span ( ) ;
762+ let span = self . value . span ( ) . clone ( ) ;
763763 self . value . broadcast_end_mark ( ) ;
764764 match self . value . untag ( ) {
765765 Value :: Mapping ( v, ..) => visit_mapping (
@@ -793,7 +793,7 @@ impl<'de, 'u, 'f> Deserializer<'de> for ValueDeserializer<'_, 'u, 'f> {
793793 self . maybe_apply_transformation ( ) ?;
794794 maybe_expecting_should_be ! ( self , deserialize_struct, name, fields, visitor) ;
795795
796- let span = self . value . span ( ) ;
796+ let span = self . value . span ( ) . clone ( ) ;
797797 self . value . broadcast_end_mark ( ) ;
798798 match self . value . untag ( ) {
799799 Value :: Mapping ( v, ..) => visit_struct (
@@ -829,7 +829,7 @@ impl<'de, 'u, 'f> Deserializer<'de> for ValueDeserializer<'_, 'u, 'f> {
829829 self . maybe_apply_transformation ( ) ?;
830830 maybe_expecting_should_be ! ( self , deserialize_enum, name, variants, visitor) ;
831831
832- let span = self . value . span ( ) ;
832+ let span = self . value . span ( ) . clone ( ) ;
833833 self . value . broadcast_end_mark ( ) ;
834834
835835 let tag;
@@ -878,7 +878,7 @@ impl<'de, 'u, 'f> Deserializer<'de> for ValueDeserializer<'_, 'u, 'f> {
878878 {
879879 maybe_expecting_should_be ! ( self , deserialize_ignored_any, visitor) ;
880880
881- let span = self . value . span ( ) ;
881+ let span = self . value . span ( ) . clone ( ) ;
882882 self . value . broadcast_end_mark ( ) ;
883883 drop ( self ) ;
884884 visitor. visit_unit ( ) . map_err ( |e| error:: set_span ( e, span) )
@@ -1135,7 +1135,7 @@ impl<'de, 'u, 'f> SeqAccess<'de> for SeqDeserializer<'_, 'u, 'f> {
11351135 self . current_idx += 1 ;
11361136 match self . iter . next ( ) {
11371137 Some ( value) => {
1138- let span = value. span ( ) ;
1138+ let span = value. span ( ) . clone ( ) ;
11391139 let unused_key_callback = self
11401140 . unused_key_callback
11411141 . as_deref_mut ( )
0 commit comments