File tree 1 file changed +2
-1
lines changed
compiler/rustc_data_structures/src/obligation_forest
1 file changed +2
-1
lines changed Original file line number Diff line number Diff line change @@ -526,7 +526,6 @@ impl<O: ForestObligation> ObligationForest<O> {
526
526
let node = & self . nodes [ index] ;
527
527
let state = node. state . get ( ) ;
528
528
if state == NodeState :: Success {
529
- node. state . set ( NodeState :: Waiting ) ;
530
529
// This call site is cold.
531
530
self . uninlined_mark_dependents_as_waiting ( node) ;
532
531
} else {
@@ -538,6 +537,8 @@ impl<O: ForestObligation> ObligationForest<O> {
538
537
// This never-inlined function is for the cold call site.
539
538
#[ inline( never) ]
540
539
fn uninlined_mark_dependents_as_waiting ( & self , node : & Node < O > ) {
540
+ // Mark node Waiting in the cold uninlined code instead of the hot inlined
541
+ node. state . set ( NodeState :: Waiting ) ;
541
542
self . inlined_mark_dependents_as_waiting ( node)
542
543
}
543
544
You can’t perform that action at this time.
0 commit comments