anchor.diff:  
     /**
      * Attempt to find the linked bundle that corresponds to the given [node]
  -   * with all its transitive dependencies and put it into [_LinkedNode.linked].
  -   */
  -  void _readLinked(_LinkedNode node, bool strong) {
  +   * with all its transitive dependencies and put it into [_LinkNode.linked].
  +   */
  +  void _readLinked(_LinkNode node, bool strong) {
       String hash = node.linkedHash;
       if (hash != null) {
         String fileName = _getLinkedName(hash, strong);
  
positive.code:       }
  
        // Link each package node.
        for (_LinkedNode node in nodes) {
          if (!node.isEvaluated) {
            new _LinkedWalker(getDeclaredVariable, listedPackages, store, strong)
                .walk(node);
          }
        }
  
        // Write newly linked bundles.
        for (_LinkedNode node in nodes) {
          _writeLinked(node, strong);
        }
      }
  
      // Create successfully linked packages.
      List<LinkedPubPackage> linkedPackages = <LinkedPubPackage>[];
      for (_LinkedNode node in nodes) {
        if (node.linked != null) {
          linkedPackages.add(new LinkedPubPackage(
              node.package, node.unlinked, node.linked, node.linkedHash));
  
negative.code:     }
  
      // Create graph nodes for packages.
      List<_LinkNode> nodes = <_LinkNode>[];
      Map<String, _LinkNode> packageToNode = <String, _LinkNode>{};
      unlinkedBundles.forEach((package, unlinked) {
        _LinkNode node = new _LinkNode(sdkBundle, getDeclaredVariable,
            listedPackages, package, unlinked, packageToNode);
        nodes.add(node);
        packageToNode[package.name] = node;
      });
  
      // Compute transitive dependencies, mark some nodes as failed.
      for (_LinkNode node in nodes) {
        node.computeTransitiveDependencies();
      }
  
      // Attempt to read existing linked bundles.
      for (_LinkNode node in nodes) {
        _readLinked(node, strong);
      }
  
  