feature check tweak (#2267)

diff --git a/lib/src/rules/avoid_init_to_null.dart b/lib/src/rules/avoid_init_to_null.dart
index b9e64fc..3fe62bd 100644
--- a/lib/src/rules/avoid_init_to_null.dart
+++ b/lib/src/rules/avoid_init_to_null.dart
@@ -69,7 +69,6 @@
   void registerNodeProcessors(
       NodeLintRegistry registry, LinterContext context) {
     final visitor = _Visitor(this, context);
-    registry.addCompilationUnit(this, visitor);
     registry.addVariableDeclaration(this, visitor);
     registry.addDefaultFormalParameter(this, visitor);
   }
@@ -79,18 +78,14 @@
   final LintRule rule;
   final LinterContext context;
 
-  bool nnbdEnabled = false;
-  _Visitor(this.rule, this.context);
+  final bool nnbdEnabled;
+  _Visitor(this.rule, this.context)
+      : nnbdEnabled = context.isEnabled(Feature.non_nullable);
 
   bool isNullable(DartType type) =>
       !nnbdEnabled || (type != null && context.typeSystem.isNullable(type));
 
   @override
-  void visitCompilationUnit(CompilationUnit node) {
-    nnbdEnabled = node.featureSet.isEnabled(Feature.non_nullable);
-  }
-
-  @override
   void visitDefaultFormalParameter(DefaultFormalParameter node) {
     if (DartTypeUtilities.isNullLiteral(node.defaultValue) &&
         isNullable(node.declaredElement.type)) {