anchor.diff:    void makeClass(ClassInfo classInfo) {
       Info? parent = classInfo.parent;
       if (parent != null) {
  -      vm.ProgramInfoNode? parentNode = infoNodesByName[parent.name];
  +      vm.ProgramInfoNode parentNode;
  +      if (parent.name == "<unnamed>" &&
  +          parent.kind == kindFromString('library')) {
  +        parentNode = infoNodesByName[unnamedLibraries[parent]]!;
  +      } else {
  +        parentNode = infoNodesByName[parent.name]!;
  +      }
         vm.ProgramInfoNode newClass = program.makeNode(
             name: classInfo.name,
  -          parent: parentNode!,
  +          parent: parentNode,
             type: vm.NodeType.classNode);
         newClass.size = classInfo.size;
         parentNode.children[newClass.name] = newClass;
  
positive.code:   void makeFunction(FunctionInfo functionInfo) {
      Info? parent = functionInfo.parent;
      if (parent != null) {
        vm.ProgramInfoNode? parentNode = infoNodesByName[parent.name];
        vm.ProgramInfoNode newFunction = program.makeNode(
            name: functionInfo.name,
            parent: parentNode!,
            type: vm.NodeType.functionNode);
        newFunction.size = functionInfo.size;
        parentNode.children[newFunction.name] = newFunction;
  
negative.code:   void makeField(FieldInfo fieldInfo) {
      Info? parent = fieldInfo.parent;
      if (parent != null) {
        vm.ProgramInfoNode parentNode;
        if (parent.name == "<unnamed>" &&
            parent.kind == kindFromString('library')) {
          parentNode = infoNodesByName[unnamedLibraries[parent]]!;
        } else {
          parentNode = infoNodesByName[parent.name]!;
        }
        vm.ProgramInfoNode newField = program.makeNode(
            name: fieldInfo.name, parent: parentNode, type: vm.NodeType.other);
        newField.size = fieldInfo.size;
        parentNode.children[newField.name] = newField;
        infoNodesByName[newField.name] = newField;
  