anchor.diff:  import 'package:analyzer/src/generated/source_io.dart';
   import 'package:analyzer/src/summary/format.dart';
   import 'package:analyzer/src/summary/idl.dart';
  +import 'package:analyzer/src/summary/link.dart';
   import 'package:analyzer/src/summary/package_bundle_reader.dart';
  -import 'package:analyzer/src/summary/prelink.dart';
   import 'package:analyzer/src/summary/summarize_ast.dart';
   import 'package:analyzer/src/summary/summarize_elements.dart';
   import 'package:analyzer/task/dart.dart';
  
positive.code:   }
  
    /**
     * Serialize the library with the given [source] into [assembler] using only
     * its AST, [UnlinkedUnit]s of input packages and ASTs (via [UnlinkedUnit]s)
     * of package sources.
     */
    void _serializeAstBasedSummary(Source source) {
      Source resolveRelativeUri(String relativeUri) {
        Source resolvedSource =
            context.sourceFactory.resolveUri(source, relativeUri);
        if (resolvedSource == null) {
          context.sourceFactory.resolveUri(source, relativeUri);
          throw new StateError('Could not resolve $relativeUri in the context of '
              '$source (${source.runtimeType})');
        }
        return resolvedSource;
      }
  
      UnlinkedUnit _getUnlinkedUnit(Source source) {
        // Maybe an input package contains the source.
        {
          String uriStr = source.uri.toString();
          UnlinkedUnit unlinkedUnit = summaryDataStore.unlinkedMap[uriStr];
          if (unlinkedUnit != null) {
            return unlinkedUnit;
          }
        }
        // Parse the source and serialize its AST.
        return uriToUnit.putIfAbsent(source.uri, () {
          CompilationUnit unit = context.computeResult(source, PARSED_UNIT);
          UnlinkedUnitBuilder unlinkedUnit = serializeAstUnlinked(unit);
          assembler.addUnlinkedUnit(source, unlinkedUnit);
  
negative.code:       });
      }
  
      Map<String, LinkedLibraryBuilder> linkResult =
          link(sourceUris, _getDependency, _getUnit, options.strongMode);
      linkResult.forEach(assembler.addLinkedLibrary);
    }
  
    /**
  