anchor.diff:      }
     }
   
  -  static void _insertionSort(List a, int left, int right, int compare(a, b)) {
  +  static void _insertionSort/*<E>*/(List/*<E>*/ a, int left, int right, int compare(dynamic /*=E*/ a, dynamic /*=E*/ b)) {
       for (int i = left + 1; i <= right; i++) {
         var el = a[i];
         int j = i;
  
positive.code:   /**
     * Sorts the list in the interval [:left:] to [:right:] (both inclusive).
     */
    static void _doSort(List a, int left, int right, int compare(a, b)) {
      if ((right - left) <= _INSERTION_SORT_THRESHOLD) {
        _insertionSort(a, left, right, compare);
      } else {
  
negative.code:     }
    }
  
    static void _dualPivotQuicksort/*<E>*/(List/*<E>*/ a,
                                    int left, int right,
                                    int compare(dynamic /*=E*/ a, dynamic /*=E*/ b)) {
      assert(right - left > _INSERTION_SORT_THRESHOLD);
  
      // Compute the two pivots by looking at 5 elements.
  