anchor.diff:    }
   
     _ReductionTask(this.kind, this.node) {
  -    assert(node is Continuation || node is LetPrim || node is Parameter);
  +    assert(node is Continuation || node is LetPrim || node is Parameter ||
  +           node is Branch);
     }
   
     bool operator==(_ReductionTask that) {
  
positive.code:   static const _ReductionKind ETA_CONT = const _ReductionKind('eta-cont', 3);
    static const _ReductionKind DEAD_PARAMETER =
        const _ReductionKind('dead-parameter', 4);
  
    String toString() => name;
  }
  
negative.code:   void processLetPrim(LetPrim node) {
      if (_isDeadVal(node)) {
        worklist.add(new _ReductionTask(_ReductionKind.DEAD_VAL, node));
      }
    }
  
    void processBranch(Branch node) {
      if (node.condition.definition is Constant) {
        worklist.add(new _ReductionTask(_ReductionKind.BRANCH, node));
      }
    }
  
  