anchor.diff:  
     void _checkMixinInference(
         NamedCompilationUnitMember node, WithClause withClause) {
  -    if (withClause == null) return;
  -    if (!_options.enableSuperMixins) return;
  -    if (!_options.strongMode) return;
  +    if (withClause == null || !_options.enableSuperMixins) {
  +      return;
  +    }
       ClassElement classElement = node.element;
       var type = classElement.type;
       var supertype = classElement.supertype;
  
positive.code:   void _checkForIllegalReturnTypeCode(TypeAnnotation returnTypeName,
        DartType expectedType, StaticTypeWarningCode errorCode) {
      DartType returnType = _enclosingFunction.returnType;
      if (_options.strongMode) {
        //
        // When checking an async/sync*/async* method, we know the exact type
        // that will be returned (e.g. Future, Iterable, or Stream).
        //
        // For example an `async` function body will return a `Future<T>` for
        // some `T` (possibly `dynamic`).
        //
        // We allow the declared return type to be a supertype of that
        // (e.g. `dynamic`, `Object`), or Future<S> for some S.
        // (We assume the T <: S relation is checked elsewhere.)
        //
        // We do not allow user-defined subtypes of Future, because an `async`
        // method will never return those.
        //
        // To check for this, we ensure that `Future<bottom> <: returnType`.
        //
        // Similar logic applies for sync* and async*.
        //
        InterfaceType genericType = (expectedType.element as ClassElement).type;
        DartType lowerBound = genericType.instantiate([BottomTypeImpl.instance]);
        if (!_typeSystem.isSubtypeOf(lowerBound, returnType)) {
          _errorReporter.reportErrorForNode(errorCode, returnTypeName);
        }
      } else if (!_typeSystem.isAssignableTo(returnType, expectedType)) {
        _errorReporter.reportErrorForNode(errorCode, returnTypeName);
      }
    }
  
negative.code:   }
  
    /**
     * Verify that the given class [declaration] does not have the same class in
     * the 'extends' and 'implements' clauses.
     *
  