@@ -180,7 +180,7 @@ where
180
180
span : I :: Span ,
181
181
) -> ( Result < ( HasChanged , Certainty ) , NoSolution > , Option < inspect:: GoalEvaluation < I > > ) {
182
182
EvalCtxt :: enter_root ( self , self . cx ( ) . recursion_limit ( ) , generate_proof_tree, span, |ecx| {
183
- ecx. evaluate_goal ( GoalEvaluationKind :: Root , GoalSource :: Misc , goal)
183
+ ecx. evaluate_goal ( GoalEvaluationKind :: Root , GoalSource :: Root , goal)
184
184
} )
185
185
}
186
186
@@ -191,7 +191,7 @@ where
191
191
) -> bool {
192
192
self . probe ( || {
193
193
EvalCtxt :: enter_root ( self , root_depth, GenerateProofTree :: No , I :: Span :: dummy ( ) , |ecx| {
194
- ecx. evaluate_goal ( GoalEvaluationKind :: Root , GoalSource :: Misc , goal)
194
+ ecx. evaluate_goal ( GoalEvaluationKind :: Root , GoalSource :: Root , goal)
195
195
} )
196
196
. 0
197
197
} )
@@ -212,7 +212,7 @@ where
212
212
self . cx ( ) . recursion_limit ( ) ,
213
213
generate_proof_tree,
214
214
I :: Span :: dummy ( ) ,
215
- |ecx| ecx. evaluate_goal_raw ( GoalEvaluationKind :: Root , GoalSource :: Misc , goal) ,
215
+ |ecx| ecx. evaluate_goal_raw ( GoalEvaluationKind :: Root , GoalSource :: Root , goal) ,
216
216
)
217
217
}
218
218
}
@@ -340,6 +340,7 @@ where
340
340
cx : I ,
341
341
search_graph : & ' a mut SearchGraph < D > ,
342
342
canonical_input : CanonicalInput < I > ,
343
+ source : GoalSource ,
343
344
goal_evaluation : & mut ProofTreeBuilder < D > ,
344
345
) -> QueryResult < I > {
345
346
let mut canonical_goal_evaluation =
@@ -352,6 +353,7 @@ where
352
353
search_graph. with_new_goal (
353
354
cx,
354
355
canonical_input,
356
+ source,
355
357
& mut canonical_goal_evaluation,
356
358
|search_graph, canonical_goal_evaluation| {
357
359
EvalCtxt :: enter_canonical (
@@ -395,12 +397,10 @@ where
395
397
/// `NormalizesTo` is only used by `AliasRelate`, all other callsites
396
398
/// should use [`EvalCtxt::evaluate_goal`] which discards that empty
397
399
/// storage.
398
- // FIXME(-Znext-solver=coinduction): `_source` is currently unused but will
399
- // be necessary once we implement the new coinduction approach.
400
400
pub ( super ) fn evaluate_goal_raw (
401
401
& mut self ,
402
402
goal_evaluation_kind : GoalEvaluationKind ,
403
- _source : GoalSource ,
403
+ source : GoalSource ,
404
404
goal : Goal < I , I :: Predicate > ,
405
405
) -> Result < ( NestedNormalizationGoals < I > , HasChanged , Certainty ) , NoSolution > {
406
406
let ( orig_values, canonical_goal) = self . canonicalize_goal ( goal) ;
@@ -410,6 +410,7 @@ where
410
410
self . cx ( ) ,
411
411
self . search_graph ,
412
412
canonical_goal,
413
+ source,
413
414
& mut goal_evaluation,
414
415
) ;
415
416
let response = match canonical_response {
0 commit comments