anchor.diff:      for (int i = 0; i < end; i++) {
         // TODO(22407): Improve bounds check elimination to allow this JS code to
         // be replaced by indexing.
  -      var element = JS('', '#[#]', this, i);
  +      var element = JS<E>('', '#[#]', this, i);
         if (test(element)) return true;
         if (this.length != end) throw new ConcurrentModificationError(this);
       }
  
positive.code:     for (int i = 1; i < length; i++) {
        // TODO(22407): Improve bounds check elimination to allow this JS code to
        // be replaced by indexing.
        var element = JS('', '#[#]', this, i);
        value = combine(value, element);
        if (length != this.length) throw new ConcurrentModificationError(this);
      }
  
negative.code:     for (int i = 0; i < length; i++) {
        // TODO(22407): Improve bounds check elimination to allow this JS code to
        // be replaced by indexing.
        var element = JS<E>('', '#[#]', this, i);
        if (test(element)) {
          if (matchFound) {
            throw IterableElementError.tooMany();
  