anchor.diff:    }
   
     /// Checks that implementations correctly override all reachable interfaces.
  -  /// In particular, we need to check these overrides for the definitions in in
  +  /// In particular, we need to check these overrides for the definitions in
     /// the class itself and each its superclasses. If a superclass is not
     /// abstract, then we can skip its transitive interfaces. For example, in:
     ///
  
positive.code:     } else if (isSetter) {
        baseMethod = type.getSetter(memberName);
      } else {
        if (memberName == '-') {
          // operator- can be overloaded!
          final len = subType.parameters.length;
          for (final method in type.methods) {
            if (method.name == memberName && method.parameters.length == len) {
              baseMethod = method;
              break;
            }
          }
        } else {
          baseMethod = type.getMethod(memberName);
        }
      }
      if (baseMethod == null) return null;
      return _rules.elementType(baseMethod);
  
negative.code: 
    visitClassDeclaration(ClassDeclaration node) {
      _overrideChecker.check(node);
      super.visitClassDeclaration(node);
    }
  
  