anchor.diff:                  CompileTimeErrorCode.FINAL_INITIALIZED_MULTIPLE_TIMES,
                   formalParameter.identifier,
                   [fieldElement.displayName]);
  -            foundError = true;
             }
           }
         }
  
positive.code:    *
     * See [CompileTimeErrorCode.IMPLEMENTS_DEFERRED_CLASS].
     */
    bool _checkForImplementsDeferredClass(ImplementsClause clause) {
      if (clause == null) {
        return false;
      }
      bool foundError = false;
      for (TypeName type in clause.interfaces) {
        if (_checkForExtendsOrImplementsDeferredClass(
            type, CompileTimeErrorCode.IMPLEMENTS_DEFERRED_CLASS)) {
          foundError = true;
        }
      }
      return foundError;
    }
  
    /**
  
negative.code:    * [errorCode] is the error code to be reported. The [arguments] are the
     * arguments to pass in when creating the error.
     */
    void _checkForAssignability(Expression expression, InterfaceType type,
        ErrorCode errorCode, List<Object> arguments) {
      if (expression == null) {
        return;
      }
      DartType expressionType = expression.staticType;
      if (expressionType == null) {
        return;
      }
      if (_typeSystem.isAssignableTo(expressionType, type)) {
        return;
      }
      _errorReporter.reportErrorForNode(errorCode, expression, arguments);
    }
  
    /**
  