anchor.diff:          && newType != types.nullType;
     }
   
  -  bool isNativeElement(Element element) {
  -    if (element.isNative()) return true;
  -    return element.isMember()
  -        && element.getEnclosingClass().isNative()
  -        && element.isField();
  -  }
  -
     TypeMask checkTypeAnnotation(Element analyzedElement, TypeMask newType) {
       if (compiler.trustTypeAnnotations
           // Parameters are being checked by the method, and we can
  
positive.code:       selector = (receiverType == types.dynamicType)
            ? selector.asUntyped
            : types.newTypedSelector(receiverType, selector);
        updateSelectorInTree(node, selector);
      }
  
      // If the receiver of the call is a local, we may know more about
  
negative.code:     } else {
        return returnTypeOfElement(element);
      }
    }
  
    void updateSelectorInTree(Element owner, Node node, Selector selector) {
      var elements = compiler.enqueuer.resolution.getCachedElements(owner);
      if (node.asSendSet() != null) {
        if (selector.isSetter() || selector.isIndexSet()) {
          elements.setSelector(node, selector);
        } else if (selector.isGetter() || selector.isIndex()) {
          elements.setGetterSelectorInComplexSendSet(node, selector);
        } else {
          assert(selector.isOperator());
          elements.setOperatorSelectorInComplexSendSet(node, selector);
        }
      } else if (node.asSend() != null) {
        elements.setSelector(node, selector);
      } else {
        assert(node.asForIn() != null);
        if (selector.asUntyped == compiler.iteratorSelector) {
          elements.setIteratorSelector(node, selector);
        } else if (selector.asUntyped == compiler.currentSelector) {
          elements.setCurrentSelector(node, selector);
        } else {
          assert(selector.asUntyped == compiler.moveNextSelector);
          elements.setMoveNextSelector(node, selector);
        }
      }
    }
  
    bool isNativeElement(Element element) {
      if (element.isNative()) return true;
      return element.isMember()
          && element.getEnclosingClass().isNative()
          && element.isField();
    }
  }
  
  