anchor.diff:    void registerNodeProcessors(
         NodeLintRegistry registry, LinterContext context) {
       final visitor = _Visitor(this, context);
  +    registry.addCompilationUnit(this, visitor);
       registry.addVariableDeclaration(this, visitor);
       registry.addDefaultFormalParameter(this, visitor);
     }
  
positive.code:   final LintRule rule;
    final LinterContext context;
  
    final bool nnbdEnabled;
    _Visitor(this.rule, this.context)
        : nnbdEnabled = context.analysisOptions.contextFeatures
              .isEnabled(Feature.non_nullable);
  
    bool isNullable(DartType type) =>
        !nnbdEnabled || (type != null && context.typeSystem.isNullable(type));
  
    @override
    void visitDefaultFormalParameter(DefaultFormalParameter node) {
      if (DartTypeUtilities.isNullLiteral(node.defaultValue)) {
        if (isNullable(node.declaredElement.type)) {
          rule.reportLint(node);
        }
      }
    }
  
  
negative.code:   void visitVariableDeclaration(VariableDeclaration node) {
      if (!node.isConst &&
          !node.isFinal &&
          DartTypeUtilities.isNullLiteral(node.initializer) &&
          isNullable(node.declaredElement.type)) {
        rule.reportLint(node);
      }
    }
  }
  