anchor.diff:      }
       return false;
     }
  +
  +  void processPendingOptimizations() {
  +    pendingOptimizations.forEach((instruction, action) => action());
  +    pendingOptimizations.clear();
  +  }
   }
   
   class SsaNonSpeculativeTypePropagator extends SsaTypePropagator {
  
positive.code:   }
  
    void processWorklist() {
      while (!worklist.isEmpty) {
        int id = worklist.removeLast();
        HInstruction instruction = workmap[id];
        assert(instruction != null);
        workmap.remove(id);
        if (updateType(instruction)) {
          addDependentInstructionsToWorkList(instruction);
        }
      }
    }
  
    void addDependentInstructionsToWorkList(HInstruction instruction) {}
  
  
negative.code: 
    final Map<int, HInstruction> workmap = new Map<int, HInstruction>();
    final List<int> worklist = new List<int>();
    final Map<HInstruction, Function> pendingOptimizations =
        new Map<HInstruction, Function>();  
  
    final Compiler compiler;
    String get name => 'type propagator';
  