enable unnecessary_late (#96417)

diff --git a/analysis_options.yaml b/analysis_options.yaml
index 91d0a8b..2d42914 100644
--- a/analysis_options.yaml
+++ b/analysis_options.yaml
@@ -215,7 +215,7 @@
     # - unnecessary_final # conflicts with prefer_final_locals
     - unnecessary_getters_setters
     # - unnecessary_lambdas # has false positives: https://github.com/dart-lang/linter/issues/498
-    # - unnecessary_late # not yet tested
+    - unnecessary_late
     - unnecessary_new
     - unnecessary_null_aware_assignments
     - unnecessary_null_checks
diff --git a/dev/tools/gen_keycodes/lib/logical_key_data.dart b/dev/tools/gen_keycodes/lib/logical_key_data.dart
index 7a40e21..a7d0d72 100644
--- a/dev/tools/gen_keycodes/lib/logical_key_data.dart
+++ b/dev/tools/gen_keycodes/lib/logical_key_data.dart
@@ -387,7 +387,7 @@
   }
 
   // Map Web key to the pair of key names
-  static late final Map<String, _ModifierPair> _chromeModifiers = () {
+  static final Map<String, _ModifierPair> _chromeModifiers = () {
     final String rawJson = File(path.join(dataRoot, 'chromium_modifiers.json',)).readAsStringSync();
     return (json.decode(rawJson) as Map<String, dynamic>).map((String key, dynamic value) {
       final List<dynamic> pair = value as List<dynamic>;
@@ -396,7 +396,7 @@
   }();
 
   /// Returns the static map of printable representations.
-  static late final Map<String, String> printable = (() {
+  static final Map<String, String> printable = (() {
     final String printableKeys = File(path.join(dataRoot, 'printable.json',)).readAsStringSync();
     return (json.decode(printableKeys) as Map<String, dynamic>)
       .cast<String, String>();
@@ -407,7 +407,7 @@
   /// These include synonyms for keys which don't have printable
   /// representations, and appear in more than one place on the keyboard (e.g.
   /// SHIFT, ALT, etc.).
-  static late final Map<String, List<String>> synonyms = (() {
+  static final Map<String, List<String>> synonyms = (() {
     final String synonymKeys = File(path.join(dataRoot, 'synonyms.json',)).readAsStringSync();
     final Map<String, dynamic> dynamicSynonym = json.decode(synonymKeys) as Map<String, dynamic>;
     return dynamicSynonym.map((String name, dynamic values) {
diff --git a/packages/flutter/lib/src/painting/matrix_utils.dart b/packages/flutter/lib/src/painting/matrix_utils.dart
index f684b72..6543fe3 100644
--- a/packages/flutter/lib/src/painting/matrix_utils.dart
+++ b/packages/flutter/lib/src/painting/matrix_utils.dart
@@ -171,7 +171,7 @@
     return Rect.fromLTRB(_minMax[0], _minMax[1], _minMax[2], _minMax[3]);
   }
 
-  static late final Float64List _minMax = Float64List(4);
+  static final Float64List _minMax = Float64List(4);
   static void _accumulate(Float64List m, double x, double y, bool first, bool isAffine) {
     final double w = isAffine ? 1.0 : 1.0 / (m[3] * x + m[7] * y + m[15]);
     final double tx = (m[0] * x + m[4] * y + m[12]) * w;
diff --git a/packages/flutter/test/rendering/rendering_tester.dart b/packages/flutter/test/rendering/rendering_tester.dart
index 347dd87..3b5523e 100644
--- a/packages/flutter/test/rendering/rendering_tester.dart
+++ b/packages/flutter/test/rendering/rendering_tester.dart
@@ -153,7 +153,7 @@
   }
 }
 
-late final TestRenderingFlutterBinding _renderer = TestRenderingFlutterBinding();
+final TestRenderingFlutterBinding _renderer = TestRenderingFlutterBinding();
 TestRenderingFlutterBinding get renderer => _renderer;
 
 
diff --git a/packages/flutter_test/lib/src/event_simulation.dart b/packages/flutter_test/lib/src/event_simulation.dart
index ff91e99..1761b4c 100644
--- a/packages/flutter_test/lib/src/event_simulation.dart
+++ b/packages/flutter_test/lib/src/event_simulation.dart
@@ -696,7 +696,7 @@
     });
   }
 
-  static late final Map<String, PhysicalKeyboardKey> _debugNameToPhysicalKey = (() {
+  static final Map<String, PhysicalKeyboardKey> _debugNameToPhysicalKey = (() {
     final Map<String, PhysicalKeyboardKey> result = <String, PhysicalKeyboardKey>{};
     for (final PhysicalKeyboardKey key in PhysicalKeyboardKey.knownPhysicalKeys) {
       final String? debugName = key.debugName;