@@ -6,8 +6,8 @@ use rustc_infer::infer::InferCtxt;
66use rustc_infer:: traits:: query:: NoSolution ;
77use rustc_infer:: traits:: solve:: { CandidateSource , GoalSource , MaybeCause } ;
88use rustc_infer:: traits:: {
9- self , FromSolverError , FulfillmentErrorLike , MismatchedProjectionTypes , Obligation ,
10- ObligationCause , ObligationCauseCode , PredicateObligation , SelectionError , TraitEngine ,
9+ self , FromSolverError , MismatchedProjectionTypes , Obligation , ObligationCause ,
10+ ObligationCauseCode , PredicateObligation , SelectionError , TraitEngine ,
1111} ;
1212use rustc_middle:: bug;
1313use rustc_middle:: ty:: error:: { ExpectedFound , TypeError } ;
@@ -31,7 +31,7 @@ use super::{Certainty, InferCtxtEvalExt};
3131///
3232/// It is also likely that we want to use slightly different datastructures
3333/// here as this will have to deal with far more root goals than `evaluate_all`.
34- pub struct FulfillmentCtxt < ' tcx , E : FulfillmentErrorLike < ' tcx > > {
34+ pub struct FulfillmentCtxt < ' tcx , E : ' tcx > {
3535 obligations : ObligationStorage < ' tcx > ,
3636
3737 /// The snapshot in which this context was created. Using the context
@@ -93,7 +93,7 @@ impl<'tcx> ObligationStorage<'tcx> {
9393 }
9494}
9595
96- impl < ' tcx , E : FulfillmentErrorLike < ' tcx > > FulfillmentCtxt < ' tcx , E > {
96+ impl < ' tcx , E : ' tcx > FulfillmentCtxt < ' tcx , E > {
9797 pub fn new ( infcx : & InferCtxt < ' tcx > ) -> FulfillmentCtxt < ' tcx , E > {
9898 assert ! (
9999 infcx. next_trait_solver( ) ,
@@ -123,8 +123,9 @@ impl<'tcx, E: FulfillmentErrorLike<'tcx>> FulfillmentCtxt<'tcx, E> {
123123 }
124124}
125125
126- impl < ' tcx , E : FromSolverError < ' tcx , NextSolverError < ' tcx > > > TraitEngine < ' tcx , E >
127- for FulfillmentCtxt < ' tcx , E >
126+ impl < ' tcx , E > TraitEngine < ' tcx , E > for FulfillmentCtxt < ' tcx , E >
127+ where
128+ E : FromSolverError < ' tcx , NextSolverError < ' tcx > > ,
128129{
129130 #[ instrument( level = "trace" , skip( self , infcx) ) ]
130131 fn register_predicate_obligation (
0 commit comments