anchor.diff:      }
   
       List<Uri> worklist = new List<Uri>();
  -    Uri mainMethodUri = mainMethod?.enclosingLibrary?.importUri;
  -    if (mainMethodUri != null) worklist.add(mainMethodUri);
  -    if (entry != null) worklist.add(entry);
  +    worklist.add(entry);
       for (LibraryBuilder library in reusedLibraries) {
         if (library.uri.scheme == "dart" && !library.isSynthetic) {
           continue;
  
positive.code:   /// any saved component problems for such builders.
    List<Library> computeTransitiveClosure(
        List<Library> inputLibraries,
        Procedure mainMethod,
        Uri entry,
        List<LibraryBuilder> reusedLibraries,
        ClassHierarchy hierarchy,
  
negative.code:       Set<Library> allLibraries;
        if (data.includeUserLoadedLibraries || fullComponent) {
          outputLibraries = computeTransitiveClosure(compiledLibraries,
              entryPoint, reusedLibraries, hierarchy, uriTranslator);
          allLibraries = outputLibraries.toSet();
        } else {
          outputLibraries = new List<Library>();
          allLibraries = computeTransitiveClosure(compiledLibraries, entryPoint,
                  reusedLibraries, hierarchy, uriTranslator, outputLibraries)
              .toSet();
        }
  
  