anchor.diff:     * Return the [_File] for the [uri] referenced in this file.
      */
     _File resolveUri(String uri) {
  +    // TODO(scheglov) Consider removing this caching after implementing other
  +    // optimizations, e.g. changeFile() optimization.
       Source uriSource = driver._uriResolutionCache
           .putIfAbsent(this.uri, () => <String, Source>{})
           .putIfAbsent(uri, () => driver._sourceFactory.resolveUri(source, uri));
  
positive.code:   final _filesToAnalyze = new LinkedHashSet<String>();
  
    /**
     * The mapping of [Uri]s to the mapping of textual URIs to the [Source]
     * that correspond in the current [_sourceFactory].
     */
    final _uriResolutionCache = <Uri, Map<String, Source>>{};
  
  
negative.code: //              libraryContext.file.source, libraryContext.file.source);
  //        });
          // Compute errors.
          List<AnalysisError> errors = _logger.run('Compute errors', () {
            return analysisContext.computeErrors(file.source);
          });
          List<String> errorStrings = errors
              .where((error) => error.errorCode is! TodoCode)
              .map((error) => error.toString())
  