diff --git a/pkg/analysis_server/lib/src/collections.dart b/pkg/analysis_server/lib/src/collections.dart
index 80a5a22..b2e4fa3 100644
--- a/pkg/analysis_server/lib/src/collections.dart
+++ b/pkg/analysis_server/lib/src/collections.dart
@@ -2,14 +2,9 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-// @dart = 2.9
-
 /// Returns the given [list] if it is not empty, or `null` otherwise.
-List<E> nullIfEmpty<E>(List<E> list) {
-  if (list == null) {
-    return null;
-  }
-  if (list.isEmpty) {
+List<E>? nullIfEmpty<E>(List<E>? list) {
+  if (list == null || list.isEmpty) {
     return null;
   }
   return list;
diff --git a/pkg/analysis_server/lib/src/utilities/extensions/ast.dart b/pkg/analysis_server/lib/src/utilities/extensions/ast.dart
index d7eaa90..fd493a4 100644
--- a/pkg/analysis_server/lib/src/utilities/extensions/ast.dart
+++ b/pkg/analysis_server/lib/src/utilities/extensions/ast.dart
@@ -2,8 +2,6 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-// @dart = 2.9
-
 import 'package:analysis_server/src/utilities/extensions/element.dart';
 import 'package:analyzer/dart/ast/ast.dart';
 import 'package:analyzer/dart/element/element.dart';
@@ -45,6 +43,8 @@
       var parent = body.parent;
       if (parent is ConstructorDeclaration || parent is MethodDeclaration) {
         return true;
+      } else if (parent == null) {
+        return false;
       }
       node = parent;
     }
diff --git a/pkg/analysis_server/lib/src/utilities/extensions/element.dart b/pkg/analysis_server/lib/src/utilities/extensions/element.dart
index b9f85ed..440d3ef 100644
--- a/pkg/analysis_server/lib/src/utilities/extensions/element.dart
+++ b/pkg/analysis_server/lib/src/utilities/extensions/element.dart
@@ -2,28 +2,24 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-// @dart = 2.9
-
 import 'package:analyzer/dart/element/element.dart';
 
 extension ClassElementExtensions on ClassElement {
   /// Return `true` if this element represents the class `Iterable` from
   /// `dart:core`.
-  bool get isDartCoreIterable =>
-      this != null && name == 'Iterable' && library.isDartCore;
+  bool get isDartCoreIterable => name == 'Iterable' && library.isDartCore;
 
   /// Return `true` if this element represents the class `List` from
   /// `dart:core`.
-  bool get isDartCoreList =>
-      this != null && name == 'List' && library.isDartCore;
+  bool get isDartCoreList => name == 'List' && library.isDartCore;
 
   /// Return `true` if this element represents the class `Map` from
   /// `dart:core`.
-  bool get isDartCoreMap => this != null && name == 'Map' && library.isDartCore;
+  bool get isDartCoreMap => name == 'Map' && library.isDartCore;
 
   /// Return `true` if this element represents the class `Set` from
   /// `dart:core`.
-  bool get isDartCoreSet => this != null && name == 'Set' && library.isDartCore;
+  bool get isDartCoreSet => name == 'Set' && library.isDartCore;
 }
 
 extension ElementExtension on Element {
@@ -53,7 +49,10 @@
     if (name != 'cast') {
       return false;
     }
-    ClassElement definingClass = enclosingElement;
+    var definingClass = enclosingElement;
+    if (definingClass is! ClassElement) {
+      return false;
+    }
     return definingClass.isDartCoreIterable ||
         definingClass.isDartCoreList ||
         definingClass.isDartCoreMap ||
@@ -66,7 +65,10 @@
     if (name != 'toList') {
       return false;
     }
-    ClassElement definingClass = enclosingElement;
+    var definingClass = enclosingElement;
+    if (definingClass is! ClassElement) {
+      return false;
+    }
     return definingClass.isDartCoreIterable || definingClass.isDartCoreList;
   }
 }
diff --git a/pkg/analysis_server/lib/src/utilities/extensions/numeric.dart b/pkg/analysis_server/lib/src/utilities/extensions/numeric.dart
index b4f7f78..005763f 100644
--- a/pkg/analysis_server/lib/src/utilities/extensions/numeric.dart
+++ b/pkg/analysis_server/lib/src/utilities/extensions/numeric.dart
@@ -2,8 +2,6 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-// @dart = 2.9
-
 extension DoubleExtensions on double {
   /// Return `true` if this value is between the [lower] and [upper] bound,
   /// inclusive.
diff --git a/pkg/analysis_server/lib/src/utilities/extensions/yaml.dart b/pkg/analysis_server/lib/src/utilities/extensions/yaml.dart
index d3bf132..dfe4983 100644
--- a/pkg/analysis_server/lib/src/utilities/extensions/yaml.dart
+++ b/pkg/analysis_server/lib/src/utilities/extensions/yaml.dart
@@ -2,14 +2,12 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-// @dart = 2.9
-
 import 'package:yaml/yaml.dart';
 
 extension YamlNodeExtensions on YamlNode {
   /// Return the child of this node that contains the given [offset], or `null`
   /// if none of the children contains the offset.
-  YamlNode childContainingOffset(int offset) {
+  YamlNode? childContainingOffset(int offset) {
     var node = this;
     if (node is YamlList) {
       for (var element in node.nodes) {
diff --git a/pkg/analysis_server/lib/src/utilities/file_string_sink.dart b/pkg/analysis_server/lib/src/utilities/file_string_sink.dart
index a81ef8f..81f8c37 100644
--- a/pkg/analysis_server/lib/src/utilities/file_string_sink.dart
+++ b/pkg/analysis_server/lib/src/utilities/file_string_sink.dart
@@ -2,25 +2,22 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-// @dart = 2.9
-
 import 'dart:io';
 
 /// A string sink that write into a file.
 class FileStringSink implements StringSink {
-  IOSink _sink;
+  final IOSink _sink;
 
-  FileStringSink(String path) {
-    _sink = File(path).openWrite(mode: FileMode.append);
-  }
+  FileStringSink(String path)
+      : _sink = File(path).openWrite(mode: FileMode.append);
 
   @override
-  void write(Object obj) {
+  void write(Object? obj) {
     throw UnimplementedError();
   }
 
   @override
-  void writeAll(Iterable objects, [String separator = '']) {
+  void writeAll(Iterable<dynamic> objects, [String separator = '']) {
     throw UnimplementedError();
   }
 
@@ -30,7 +27,7 @@
   }
 
   @override
-  void writeln([Object obj = '']) {
+  void writeln([Object? obj = '']) {
     var currentTimeMillis = DateTime.now().millisecondsSinceEpoch;
     _sink.writeln('$currentTimeMillis $obj');
   }
diff --git a/pkg/analysis_server/lib/src/utilities/null_string_sink.dart b/pkg/analysis_server/lib/src/utilities/null_string_sink.dart
index 9fb109c..3af2f4a 100644
--- a/pkg/analysis_server/lib/src/utilities/null_string_sink.dart
+++ b/pkg/analysis_server/lib/src/utilities/null_string_sink.dart
@@ -2,16 +2,17 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-// @dart = 2.9
-
 /// A string sink that ignores everything written to it.
 class NullStringSink implements StringSink {
   @override
-  void write(Object obj) {}
+  void write(Object? obj) {}
+
   @override
-  void writeAll(Iterable objects, [String separator = '']) {}
+  void writeAll(Iterable<dynamic> objects, [String separator = '']) {}
+
   @override
   void writeCharCode(int charCode) {}
+
   @override
-  void writeln([Object obj = '']) {}
+  void writeln([Object? obj = '']) {}
 }
diff --git a/pkg/analysis_server/lib/src/utilities/tee_string_sink.dart b/pkg/analysis_server/lib/src/utilities/tee_string_sink.dart
index bb3be93..2b715c2 100644
--- a/pkg/analysis_server/lib/src/utilities/tee_string_sink.dart
+++ b/pkg/analysis_server/lib/src/utilities/tee_string_sink.dart
@@ -2,8 +2,6 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-// @dart = 2.9
-
 /// A [StringSink] that writes into two other [StringSink]s.
 class TeeStringSink implements StringSink {
   final StringSink sink1;
@@ -12,13 +10,13 @@
   TeeStringSink(this.sink1, this.sink2);
 
   @override
-  void write(Object obj) {
+  void write(Object? obj) {
     sink1.write(obj);
     sink2.write(obj);
   }
 
   @override
-  void writeAll(Iterable objects, [String separator = '']) {
+  void writeAll(Iterable<dynamic> objects, [String separator = '']) {
     sink1.writeAll(objects, separator);
     sink2.writeAll(objects, separator);
   }
@@ -30,7 +28,7 @@
   }
 
   @override
-  void writeln([Object obj = '']) {
+  void writeln([Object? obj = '']) {
     sink1.writeln(obj);
     sink2.writeln(obj);
   }
diff --git a/pkg/analysis_server/tool/code_completion/output_utilities.dart b/pkg/analysis_server/tool/code_completion/output_utilities.dart
index 483ba38..aef456c 100644
--- a/pkg/analysis_server/tool/code_completion/output_utilities.dart
+++ b/pkg/analysis_server/tool/code_completion/output_utilities.dart
@@ -2,8 +2,6 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-// @dart = 2.9
-
 import 'dart:math' as math;
 
 /// Print the given [table].
@@ -13,7 +11,7 @@
   print(buffer.toString());
 }
 
-/// Return an interable that will produce all of the integer values between
+/// Return an iterable that will produce all of the integer values between
 /// [first] and [last] inclusive.
 Iterable<int> range(int first, int last) sync* {
   for (var i = first; i < last; i++) {
diff --git a/runtime/vm/debugger.cc b/runtime/vm/debugger.cc
index 6856353..e90e6ad 100644
--- a/runtime/vm/debugger.cc
+++ b/runtime/vm/debugger.cc
@@ -3231,17 +3231,7 @@
 
   // Going through BreakpointLocations of all isolates and debuggers looking
   // for those that can be resolved and added code breakpoints at now.
-  //
-  // When IsolateGroups are enabled assert that we are either only one isolate
-  // or in safepoint operation scope because we are updating
-  // breakpoint_locations, which normally needs to be under a
-  // breakpoint_locations_lock, but we can't acquire that lock because
-  // somebody else(who is at a safepoint we inititated) holds it
-  // already, can't release it.
-  RELEASE_ASSERT(
-      (thread->IsMutatorThread() && !IsolateGroup::AreIsolateGroupsEnabled()) ||
-      (thread->IsMutatorThread() && isolate_group_->ContainsOnlyOneIsolate()) ||
-      isolate_group_->safepoint_handler()->IsOwnedByTheThread(thread));
+  SafepointReadRwLocker sl(thread, breakpoint_locations_lock());
   for (intptr_t i = 0; i < breakpoint_locations_.length(); i++) {
     BreakpointLocation* location = breakpoint_locations_.At(i);
     if (EnsureLocationIsInFunction(zone, function, location)) {
diff --git a/tests/co19_2/co19_2-kernel.status b/tests/co19_2/co19_2-kernel.status
index f3e2127..8f395a7 100644
--- a/tests/co19_2/co19_2-kernel.status
+++ b/tests/co19_2/co19_2-kernel.status
@@ -18,95 +18,6 @@
 LibTest/core/List/List_class_A01_t02: Slow, Pass # Does many calls
 LibTest/io/RawDatagramSocket/*: Skip # RawDatagramSocket are flacky. Skip them all until rewritten
 
-[ $fasta ]
-Language/Expressions/Shift/integer_t04/01: Crash
-Language/Expressions/Shift/integer_t04/02: Crash
-Language/Expressions/Shift/integer_t04/03: Crash
-Language/Expressions/Shift/integer_t04/04: Crash
-Language/Expressions/Shift/integer_t04/05: Crash
-Language/Expressions/Shift/integer_t04/06: Crash
-Language/Expressions/Shift/integer_t04/07: Crash
-Language/Expressions/Shift/integer_t04/none: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t01: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t02: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t03/01: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t03/02: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t03/03: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t03/04: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t03/05: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t03/06: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t03/none: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t04: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t04/01: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t04/02: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t04/03: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t04/04: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t04/none: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t05/01: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t05/02: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t05/03: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t05/04: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t05/05: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t05/06: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t05/none: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t06/01: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t06/02: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t06/03: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t06/04: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t06/05: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t06/06: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t07: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t07/01: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t07/02: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t07/03: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t07/04: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t07/05: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t07/06: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t07/none: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t08/01: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t08/02: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t08/03: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t08/04: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t08/05: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t08/none: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t09: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t10/01: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t10/02: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t10/03: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t10/04: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t10/05: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t10/06: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t10/none: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t11: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t12/01: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t12/02: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t12/03: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t12/04: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t12/05: Crash
-LanguageFeatures/Constant-update-2018/NewOperators_A01_t12/none: Crash
-LanguageFeatures/Instantiate-to-bound/class/dynamic/class_FutureOr_l1_t01: Crash
-LanguageFeatures/Instantiate-to-bound/class/dynamic/class_FutureOr_l1_t03: Crash
-LanguageFeatures/Instantiate-to-bound/class/static/class_FutureOr_l1_t01: Crash
-LanguageFeatures/Instantiate-to-bound/class/static/class_FutureOr_l1_t01/01: Crash
-LanguageFeatures/Instantiate-to-bound/class/static/class_FutureOr_l1_t01/02: Crash
-LanguageFeatures/Instantiate-to-bound/class/static/class_FutureOr_l1_t01/03: Crash
-LanguageFeatures/Instantiate-to-bound/class/static/class_FutureOr_l1_t01/04: Crash
-LanguageFeatures/Instantiate-to-bound/class/static/class_FutureOr_l1_t01/none: Crash
-LanguageFeatures/Instantiate-to-bound/class/static/class_FutureOr_l1_t03/01: Crash
-LanguageFeatures/Instantiate-to-bound/class/static/class_FutureOr_l1_t03/02: Crash
-LanguageFeatures/Instantiate-to-bound/class/static/class_FutureOr_l1_t03/none: Crash
-LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l1_t04/01: Crash
-LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l1_t04/02: Crash
-LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l1_t04/none: Crash
-LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l2_t04/01: Crash
-LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l2_t04/none: Crash
-LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l2_t08/01: Crash
-LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l2_t08/02: Crash
-LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l2_t08/none: Crash
-LanguageFeatures/Set-literals/disambiguating_A02_t03: Crash
-LanguageFeatures/regression/34803_t01: Crash
-LanguageFeatures/regression/34803_t02: Crash
-
 [ $compiler == dartk && $runtime == vm && $system == linux ]
 LibTest/isolate/Isolate/spawn_A06_t03: Crash
 
diff --git a/tools/VERSION b/tools/VERSION
index 13f947d..6f895ad 100644
--- a/tools/VERSION
+++ b/tools/VERSION
@@ -27,5 +27,5 @@
 MAJOR 2
 MINOR 13
 PATCH 0
-PRERELEASE 183
+PRERELEASE 184
 PRERELEASE_PATCH 0
\ No newline at end of file
