@@ -484,12 +484,11 @@ where
484
484
tcx. store_side_effects_for_anon_node ( dep_node_index, side_effects) ;
485
485
}
486
486
487
- let result = job. complete ( result, dep_node_index) ;
488
487
( result, dep_node_index)
489
488
} else if query. eval_always {
490
489
// `to_dep_node` is expensive for some `DepKind`s.
491
490
let dep_node = dep_node. unwrap_or_else ( || query. to_dep_node ( * tcx. dep_context ( ) , & key) ) ;
492
- force_query_with_job ( tcx, key, job, dep_node, query, compute)
491
+ force_query_with_job ( tcx, key, job. id , dep_node, query, compute)
493
492
} else {
494
493
// `to_dep_node` is expensive for some `DepKind`s.
495
494
let dep_node = dep_node. unwrap_or_else ( || query. to_dep_node ( * tcx. dep_context ( ) , & key) ) ;
@@ -500,12 +499,12 @@ where
500
499
try_load_from_disk_and_cache_in_memory ( tcx, & key, & dep_node, query, compute)
501
500
} ) ;
502
501
if let Some ( ( result, dep_node_index) ) = loaded {
503
- let result = job. complete ( result, dep_node_index) ;
504
502
( result, dep_node_index)
505
503
} else {
506
- force_query_with_job ( tcx, key, job, dep_node, query, compute)
504
+ force_query_with_job ( tcx, key, job. id , dep_node, query, compute)
507
505
}
508
506
} ;
507
+ let result = job. complete ( result, dep_node_index) ;
509
508
( result, Some ( dep_node_index) )
510
509
}
511
510
@@ -636,22 +635,22 @@ fn incremental_verify_ich<CTX, K, V: Debug>(
636
635
}
637
636
}
638
637
639
- fn force_query_with_job < C , CTX > (
638
+ fn force_query_with_job < CTX , K , V > (
640
639
tcx : CTX ,
641
- key : C :: Key ,
642
- job : JobOwner < ' _ , CTX :: DepKind , C > ,
640
+ key : K ,
641
+ job_id : QueryJobId < CTX :: DepKind > ,
643
642
dep_node : DepNode < CTX :: DepKind > ,
644
- query : & QueryVtable < CTX , C :: Key , C :: Value > ,
645
- compute : fn ( CTX :: DepContext , C :: Key ) -> C :: Value ,
646
- ) -> ( C :: Stored , DepNodeIndex )
643
+ query : & QueryVtable < CTX , K , V > ,
644
+ compute : fn ( CTX :: DepContext , K ) -> V ,
645
+ ) -> ( V , DepNodeIndex )
647
646
where
648
- C : QueryCache ,
649
647
CTX : QueryContext ,
648
+ K : Debug ,
650
649
{
651
650
let prof_timer = tcx. dep_context ( ) . profiler ( ) . query_provider ( ) ;
652
651
653
652
let ( ( result, dep_node_index) , diagnostics) = with_diagnostics ( |diagnostics| {
654
- tcx. start_query ( job . id , diagnostics, || {
653
+ tcx. start_query ( job_id , diagnostics, || {
655
654
if query. eval_always {
656
655
tcx. dep_context ( ) . dep_graph ( ) . with_eval_always_task (
657
656
dep_node,
@@ -680,8 +679,6 @@ where
680
679
tcx. store_side_effects ( dep_node_index, side_effects) ;
681
680
}
682
681
683
- let result = job. complete ( result, dep_node_index) ;
684
-
685
682
( result, dep_node_index)
686
683
}
687
684
0 commit comments