anchor.diff:      }
       return null;
     })();
  +
  +  static bool hasInstanceMethod(type, symbol) {
  +    // Always allow instance methods found in the Object class. This makes
  +    // it easier to work around a few bugs in the dart2js implementation.
  +    if (objectClassInstanceMethods.contains(symbol)) return true;
  +    // Work around http://dartbug.com/16309 which causes access to the
  +    // instance members of certain builtin types to throw exceptions
  +    // while traversing the superclass chain.
  +    var mirror;
  +    try {
  +      mirror = type.instanceMembers[symbol];
  +    } on UnsupportedError catch (e) {
  +      mirror = type.declarations[symbol];
  +    }
  +    // Work around http://dartbug.com/15760 which causes noSuchMethod
  +    // forwarding stubs to be treated as members of all classes. We have
  +    // already checked for the real instance methods in Object, so if the
  +    // owner of this method is Object we simply filter it out.
  +    if (mirror is !MethodMirror) return false;
  +    return mirror.owner != objectClassMirror;
  +  }
   }
   
   /**
  
positive.code:     return list;
    }
  
    static bool hasMember(InstanceMirror mirror, Symbol symbol) {
      return hasMethodHelper(mirror.type, symbol);
    }
  
    static final Function hasMethodHelper = (() {
      var objectType = reflect(Object).type;
      try {
        // Use ClassMirror.instanceMembers if available. It contains local
        // as well as inherited members.
        objectType.instanceMembers;
        return (type, symbol) => type.instanceMembers[symbol] is MethodMirror;
      } on NoSuchMethodError catch (e) {
        // For SDK 1.0 we fall back to just using the local members.
        return (type, symbol) => type.members[symbol] is MethodMirror;
  
negative.code:   _assignToNonExisting(scope, value) => null;
  
    static Function createInvokeClosure(InstanceMirror mirror, Symbol symbol) {
      if (!hasMethod(mirror, symbol)) return null;
      return relaxFnArgs(([a0, a1, a2, a3, a4, a5]) {
        var arguments = stripTrailingNulls([a0, a1, a2, a3, a4, a5]);
        return mirror.invoke(symbol, arguments).reflectee;
  