@@ -27,6 +27,7 @@ use rustc_middle::mir::tcx::PlaceTy;
2727use  rustc_middle:: mir:: visit:: { NonMutatingUseContext ,  PlaceContext ,  Visitor } ; 
2828use  rustc_middle:: mir:: AssertKind ; 
2929use  rustc_middle:: mir:: * ; 
30+ use  rustc_middle:: traits:: query:: NoSolution ; 
3031use  rustc_middle:: ty:: adjustment:: PointerCast ; 
3132use  rustc_middle:: ty:: cast:: CastTy ; 
3233use  rustc_middle:: ty:: subst:: { SubstsRef ,  UserSubsts } ; 
@@ -42,7 +43,7 @@ use rustc_target::abi::{FieldIdx, FIRST_VARIANT};
4243use  rustc_trait_selection:: traits:: query:: type_op:: custom:: scrape_region_constraints; 
4344use  rustc_trait_selection:: traits:: query:: type_op:: custom:: CustomTypeOp ; 
4445use  rustc_trait_selection:: traits:: query:: type_op:: { TypeOp ,  TypeOpOutput } ; 
45- use  rustc_trait_selection :: traits :: query :: Fallible ; 
46+ 
4647use  rustc_trait_selection:: traits:: PredicateObligation ; 
4748
4849use  rustc_mir_dataflow:: impls:: MaybeInitializedPlaces ; 
@@ -1133,7 +1134,7 @@ impl<'a, 'tcx> TypeChecker<'a, 'tcx> {
11331134        sup :  Ty < ' tcx > , 
11341135        locations :  Locations , 
11351136        category :  ConstraintCategory < ' tcx > , 
1136-     )  -> Fallible < ( ) >  { 
1137+     )  -> Result < ( ) ,   NoSolution >  { 
11371138        // Use this order of parameters because the sup type is usually the 
11381139        // "expected" type in diagnostics. 
11391140        self . relate_types ( sup,  ty:: Variance :: Contravariant ,  sub,  locations,  category) 
@@ -1146,7 +1147,7 @@ impl<'a, 'tcx> TypeChecker<'a, 'tcx> {
11461147        found :  Ty < ' tcx > , 
11471148        locations :  Locations , 
11481149        category :  ConstraintCategory < ' tcx > , 
1149-     )  -> Fallible < ( ) >  { 
1150+     )  -> Result < ( ) ,   NoSolution >  { 
11501151        self . relate_types ( expected,  ty:: Variance :: Invariant ,  found,  locations,  category) 
11511152    } 
11521153
@@ -1158,7 +1159,7 @@ impl<'a, 'tcx> TypeChecker<'a, 'tcx> {
11581159        user_ty :  & UserTypeProjection , 
11591160        locations :  Locations , 
11601161        category :  ConstraintCategory < ' tcx > , 
1161-     )  -> Fallible < ( ) >  { 
1162+     )  -> Result < ( ) ,   NoSolution >  { 
11621163        let  annotated_type = self . user_type_annotations [ user_ty. base ] . inferred_ty ; 
11631164        trace ! ( ?annotated_type) ; 
11641165        let  mut  curr_projected_ty = PlaceTy :: from_ty ( annotated_type) ; 
0 commit comments