@@ -651,6 +651,10 @@ pub enum ImplSource<'tcx, N> {
651
651
652
652
/// ImplSource for a `const Drop` implementation.
653
653
ConstDestruct ( ImplSourceConstDestructData < N > ) ,
654
+
655
+ /// ImplSource for a `std::marker::Tuple` implementation.
656
+ /// This has no nested predicates ever, so no data.
657
+ Tuple ,
654
658
}
655
659
656
660
impl < ' tcx , N > ImplSource < ' tcx , N > {
@@ -665,7 +669,8 @@ impl<'tcx, N> ImplSource<'tcx, N> {
665
669
ImplSource :: Object ( d) => d. nested ,
666
670
ImplSource :: FnPointer ( d) => d. nested ,
667
671
ImplSource :: DiscriminantKind ( ImplSourceDiscriminantKindData )
668
- | ImplSource :: Pointee ( ImplSourcePointeeData ) => Vec :: new ( ) ,
672
+ | ImplSource :: Pointee ( ImplSourcePointeeData )
673
+ | ImplSource :: Tuple => Vec :: new ( ) ,
669
674
ImplSource :: TraitAlias ( d) => d. nested ,
670
675
ImplSource :: TraitUpcasting ( d) => d. nested ,
671
676
ImplSource :: ConstDestruct ( i) => i. nested ,
@@ -683,7 +688,8 @@ impl<'tcx, N> ImplSource<'tcx, N> {
683
688
ImplSource :: Object ( d) => & d. nested ,
684
689
ImplSource :: FnPointer ( d) => & d. nested ,
685
690
ImplSource :: DiscriminantKind ( ImplSourceDiscriminantKindData )
686
- | ImplSource :: Pointee ( ImplSourcePointeeData ) => & [ ] ,
691
+ | ImplSource :: Pointee ( ImplSourcePointeeData )
692
+ | ImplSource :: Tuple => & [ ] ,
687
693
ImplSource :: TraitAlias ( d) => & d. nested ,
688
694
ImplSource :: TraitUpcasting ( d) => & d. nested ,
689
695
ImplSource :: ConstDestruct ( i) => & i. nested ,
@@ -750,6 +756,7 @@ impl<'tcx, N> ImplSource<'tcx, N> {
750
756
nested : i. nested . into_iter ( ) . map ( f) . collect ( ) ,
751
757
} )
752
758
}
759
+ ImplSource :: Tuple => ImplSource :: Tuple ,
753
760
}
754
761
}
755
762
}
0 commit comments