anchor.diff:    }
   
     /// Return whether [member] returns a native object whose type needs to be
  -  /// checked.
  -  bool _isCheckableNative(Member member) =>
  +  /// null-checked. This is true for non-nullable native return types.
  +  bool _isNullCheckableNative(Member member) =>
         member != null &&
         member.isExternal &&
         _extensionTypes.isNativeClass(member.enclosingClass) &&
  
positive.code: 
    @override
    js_ast.Expression visitPropertyGet(PropertyGet node) {
      var propertyGet =
          _emitPropertyGet(node.receiver, node.interfaceTarget, node.name.text);
      if (_isCheckableNative(node.interfaceTarget)) {
        // If target is a native getter with a non-nullable type, add a null check
        // for soundness.
        return runtimeCall('checkNativeNonNull(#)', [propertyGet]);
      }
      return propertyGet;
    }
  
    @override
  
negative.code:       // Fields on a native class are implicitly native.
        // Methods/getters/setters are marked external/native.
        if (member is Field || _isExternal(member)) {
          // If the native member needs to be null-checked, we require symbolizing
          // it in order to access the null-check at the member definition.
          if (_isNullCheckableNative(member)) return true;
          var jsName = _annotationName(member, isJSName);
          return jsName != null && jsName != name;
        } else {
  