anchor.diff:    NonParameterVariableElementImpl(String name, int offset)
         : super(name, offset);
   
  -  NonParameterVariableElementImpl.forLinkedNode(
  -      ElementImpl enclosing, Reference reference, AstNode linkedNode)
  -      : super.forLinkedNode(enclosing, reference, linkedNode);
  -
     @override
     Element get enclosingElement => super.enclosingElement!;
   
  -  @override
  -  bool get hasImplicitType {
  -    if (linkedNode != null) {
  -      return linkedContext!.hasImplicitType(linkedNode!);
  -    }
  -    return super.hasImplicitType;
  -  }
  -
     bool get hasInitializer {
  -    if (linkedNode != null) {
  -      return linkedContext!
  -          .hasInitializer(linkedNode as VariableDeclarationImpl);
  -    }
       return hasModifier(Modifier.HAS_INITIALIZER);
     }
   
     /// Set whether this variable has an initializer.
     set hasInitializer(bool hasInitializer) {
       setModifier(Modifier.HAS_INITIALIZER, hasInitializer);
  -  }
  -
  -  @override
  -  String get name {
  -    if (linkedNode != null) {
  -      return reference!.name;
  -    }
  -    return super.name;
  -  }
  -
  -  @override
  -  int get nameOffset {
  -    if (linkedNode != null) {
  -      return enclosingUnit.linkedContext!.getNameOffset(linkedNode!);
  -    }
  -
  -    return super.nameOffset;
  -  }
  -
  -  @override
  -  DartType get type => ElementTypeProvider.current.getVariableType(this);
  -
  -  @override
  -  set type(DartType type) {
  -    _type = type;
     }
   }
   
  
positive.code: 
    @override
    bool get isAbstract {
      if (linkedNode != null) {
        return !isExternal &&
            enclosingUnit.linkedContext!.isAbstract(linkedNode!);
      }
      return hasModifier(Modifier.ABSTRACT);
    }
  
    @override
    bool get isAsynchronous {
      if (linkedNode != null) {
        return enclosingUnit.linkedContext!.isAsynchronous(linkedNode!);
      }
      return hasModifier(Modifier.ASYNCHRONOUS);
    }
  
  
negative.code: 
    @override
    bool get isLate {
      return hasModifier(Modifier.LATE);
    }
  
  