Version 2.15.0-248.0.dev

Merge commit 'b61605b5e6908f3249c471ef6ac270cdd2acc5f3' into 'dev'
diff --git a/pkg/analysis_server/lib/src/analysis_server_abstract.dart b/pkg/analysis_server/lib/src/analysis_server_abstract.dart
index 41cb540..9e758b6 100644
--- a/pkg/analysis_server/lib/src/analysis_server_abstract.dart
+++ b/pkg/analysis_server/lib/src/analysis_server_abstract.dart
@@ -331,7 +331,7 @@
         return null;
       }
 
-      var unitElementResult = await driver.getUnitElement2(file);
+      var unitElementResult = await driver.getUnitElement(file);
       if (unitElementResult is! UnitElementResult) {
         return null;
       }
@@ -414,7 +414,7 @@
     }
 
     return driver
-        .getResult2(path, sendCachedToStream: sendCachedToStream)
+        .getResult(path, sendCachedToStream: sendCachedToStream)
         .then((value) => value is ResolvedUnitResult ? value : null)
         .catchError((e, st) {
       instrumentationService.logException(e, st);
diff --git a/pkg/analysis_server/lib/src/domains/execution/completion.dart b/pkg/analysis_server/lib/src/domains/execution/completion.dart
index 01ab4cf..6988248 100644
--- a/pkg/analysis_server/lib/src/domains/execution/completion.dart
+++ b/pkg/analysis_server/lib/src/domains/execution/completion.dart
@@ -26,7 +26,7 @@
       this.code, this.offset, this.contextPath, this.contextOffset);
 
   Future<RuntimeCompletionResult> compute() async {
-    var contextResult = await analysisDriver.getResult2(contextPath);
+    var contextResult = await analysisDriver.getResult(contextPath);
     if (contextResult is! ResolvedUnitResult) {
       return RuntimeCompletionResult([], []);
     }
@@ -64,7 +64,7 @@
     // Update the context file content to include the code being completed.
     // Then resolve it, and restore the file to its initial state.
     var targetResult = await _withContextFileContent(targetCode, () async {
-      return await analysisDriver.getResult2(contextPath);
+      return await analysisDriver.getResult(contextPath);
     });
     if (targetResult is! ResolvedUnitResult) {
       return RuntimeCompletionResult([], []);
diff --git a/pkg/analysis_server/lib/src/lsp/handlers/commands/sort_members.dart b/pkg/analysis_server/lib/src/lsp/handlers/commands/sort_members.dart
index 9372068..d832d06 100644
--- a/pkg/analysis_server/lib/src/lsp/handlers/commands/sort_members.dart
+++ b/pkg/analysis_server/lib/src/lsp/handlers/commands/sort_members.dart
@@ -36,7 +36,7 @@
     final docIdentifier = server.getVersionedDocumentIdentifier(path);
 
     var driver = server.getAnalysisDriver(path);
-    final result = await driver?.parseFile2(path);
+    final result = driver?.parseFileSync(path);
 
     if (cancellationToken.isCancellationRequested) {
       return error(ErrorCodes.RequestCancelled, 'Request was cancelled');
diff --git a/pkg/analysis_server/lib/src/lsp/lsp_analysis_server.dart b/pkg/analysis_server/lib/src/lsp/lsp_analysis_server.dart
index 7098d09..d33a96e 100644
--- a/pkg/analysis_server/lib/src/lsp/lsp_analysis_server.dart
+++ b/pkg/analysis_server/lib/src/lsp/lsp_analysis_server.dart
@@ -265,7 +265,7 @@
   /// analyzed in one of the analysis drivers to which the file was added,
   /// otherwise in the first driver, otherwise `null` is returned.
   LineInfo? getLineInfo(String path) {
-    var result = getAnalysisDriver(path)?.getFileSync2(path);
+    var result = getAnalysisDriver(path)?.getFileSync(path);
     return result is FileResult ? result.lineInfo : null;
   }
 
diff --git a/pkg/analysis_server/lib/src/status/diagnostics.dart b/pkg/analysis_server/lib/src/status/diagnostics.dart
index 629d626..0d4629c 100644
--- a/pkg/analysis_server/lib/src/status/diagnostics.dart
+++ b/pkg/analysis_server/lib/src/status/diagnostics.dart
@@ -243,7 +243,7 @@
           raw: true);
       return;
     }
-    var result = await driver.getResult2(filePath);
+    var result = await driver.getResult(filePath);
     if (result is ResolvedUnitResult) {
       var writer = AstWriter(buf);
       result.unit.accept(writer);
@@ -833,7 +833,7 @@
           raw: true);
       return;
     }
-    var result = await driver.getResult2(filePath);
+    var result = await driver.getResult(filePath);
     CompilationUnitElement? compilationUnitElement;
     if (result is ResolvedUnitResult) {
       compilationUnitElement = result.unit.declaredElement;
diff --git a/pkg/analysis_server/test/edit/refactoring_test.dart b/pkg/analysis_server/test/edit/refactoring_test.dart
index 3db384d..bffa9fc 100644
--- a/pkg/analysis_server/test/edit/refactoring_test.dart
+++ b/pkg/analysis_server/test/edit/refactoring_test.dart
@@ -2161,7 +2161,7 @@
   print(otherName);
 }
 ''');
-    server.getAnalysisDriver(testFile)!.getResult2(testFile);
+    server.getAnalysisDriver(testFile)!.getResult(testFile);
     // send the second request, with the same kind, file and offset
     await waitForTasksFinished();
     result = await getRefactoringResult(() {
diff --git a/pkg/analysis_server/test/services/search/search_engine_test.dart b/pkg/analysis_server/test/services/search/search_engine_test.dart
index 708c0a8..07feae1 100644
--- a/pkg/analysis_server/test/services/search/search_engine_test.dart
+++ b/pkg/analysis_server/test/services/search/search_engine_test.dart
@@ -328,7 +328,7 @@
 ''').path;
 
     var coreLibResult = await driverFor(testFilePath)
-        .getLibraryByUri2('dart:core') as LibraryElementResult;
+        .getLibraryByUri('dart:core') as LibraryElementResult;
     var intElement = coreLibResult.element.getType('int')!;
 
     var matches = await searchEngine.searchReferences(intElement);
@@ -427,7 +427,7 @@
       var contextRoot = driver.analysisContext!.contextRoot;
       for (var file in contextRoot.analyzedFiles()) {
         if (file.endsWith('.dart')) {
-          await driver.getUnitElement2(file);
+          await driver.getUnitElement(file);
         }
       }
     }
diff --git a/pkg/analyzer/CHANGELOG.md b/pkg/analyzer/CHANGELOG.md
index 5d2932b..f0dc96e 100644
--- a/pkg/analyzer/CHANGELOG.md
+++ b/pkg/analyzer/CHANGELOG.md
@@ -1,3 +1,7 @@
+## 2.8.0-dev
+* Deprecations and renames for `getXyz` methods in `AnalysisDriver`.
+* Removed uppercase named constants from `double` in mock SDK.
+
 ## 2.7.0
 * Updated `ConstructorElement.displayName` to either `Class` or `Class.constructor`.
 * Deprecated `InterfaceType.getSmartLeastUpperBound`, use `TypeSystem.leastUpperBound` instead.
diff --git a/pkg/analyzer/lib/dart/analysis/results.dart b/pkg/analyzer/lib/dart/analysis/results.dart
index a839b73..6bf41b7 100644
--- a/pkg/analyzer/lib/dart/analysis/results.dart
+++ b/pkg/analyzer/lib/dart/analysis/results.dart
@@ -340,8 +340,7 @@
 /// The result of building the element model for a single file.
 ///
 /// Clients may not extend, implement or mix-in this class.
-abstract class UnitElementResult
-    implements SomeUnitElementResult, AnalysisResult {
+abstract class UnitElementResult implements SomeUnitElementResult, FileResult {
   /// The element of the file.
   CompilationUnitElement get element;
 
diff --git a/pkg/analyzer/lib/src/dart/analysis/driver.dart b/pkg/analyzer/lib/src/dart/analysis/driver.dart
index 557a2e8..32ea11f 100644
--- a/pkg/analyzer/lib/src/dart/analysis/driver.dart
+++ b/pkg/analyzer/lib/src/dart/analysis/driver.dart
@@ -139,11 +139,11 @@
   final _priorityFiles = <String>{};
 
   /// The mapping from the files for which analysis was requested using
-  /// [getResult2] to the [Completer]s to report the result.
+  /// [getResult] to the [Completer]s to report the result.
   final _requestedFiles = <String, List<Completer<ResolvedUnitResult>>>{};
 
   /// The mapping from the files for which analysis was requested using
-  /// [getResolvedLibrary2] to the [Completer]s to report the result.
+  /// [getResolvedLibrary] to the [Completer]s to report the result.
   final _requestedLibraries =
       <String, List<Completer<ResolvedLibraryResult>>>{};
 
@@ -159,7 +159,7 @@
   final _referencingNameTasks = <_FilesReferencingNameTask>[];
 
   /// The mapping from the files for which errors were requested using
-  /// [getErrors2] to the [Completer]s to report the result.
+  /// [getErrors] to the [Completer]s to report the result.
   final _errorsRequestedFiles = <String, List<Completer<ErrorsResult>>>{};
 
   /// The requests from [_errorsRequestedFiles] for files which were found to
@@ -172,18 +172,18 @@
       <String, List<Completer<AnalysisDriverUnitIndex>>>{};
 
   /// The mapping from the files for which the unit element was requested using
-  /// [getUnitElement2] to the [Completer]s to report the result.
+  /// [getUnitElement] to the [Completer]s to report the result.
   final _unitElementRequestedFiles =
       <String, List<Completer<UnitElementResult>>>{};
 
   /// The mapping from the files for which the unit element was requested using
-  /// [getUnitElement2], and which were found to be parts without known
+  /// [getUnitElement], and which were found to be parts without known
   /// libraries, to the [Completer]s to report the result.
   final _unitElementRequestedParts =
       <String, List<Completer<UnitElementResult>>>{};
 
   /// The mapping from the files for which analysis was requested using
-  /// [getResult2], and which were found to be parts without known libraries,
+  /// [getResult], and which were found to be parts without known libraries,
   /// to the [Completer]s to report the result.
   final _requestedParts = <String, List<Completer<ResolvedUnitResult>>>{};
 
@@ -382,7 +382,7 @@
   /// the analysis state transitions to "idle".
   ///
   /// [ResolvedUnitResult]s are produced for:
-  /// 1. Files requested using [getResult2].
+  /// 1. Files requested using [getResult].
   /// 2. Files passed to [addFile] which are also in [priorityFiles].
   ///
   /// [ErrorsResult]s are produced for:
@@ -398,7 +398,7 @@
   /// client does not change the state of the files.
   ///
   /// Results might be produced even for files that have never been added
-  /// using [addFile], for example when [getResult2] was called for a file.
+  /// using [addFile], for example when [getResult] was called for a file.
   Stream<Object> get results => _onResults;
 
   /// Return the search support for the driver.
@@ -494,7 +494,7 @@
   /// transitions to "idle".
   ///
   /// Invocation of this method will not prevent a [Future] returned from
-  /// [getResult2] from completing with a result, but the result is not
+  /// [getResult] from completing with a result, but the result is not
   /// guaranteed to be consistent with the new current file state after this
   /// [changeFile] invocation.
   void changeFile(String path) {
@@ -593,7 +593,7 @@
   ///
   /// This method does not use analysis priorities, and must not be used in
   /// interactive analysis, such as Analysis Server or its plugins.
-  Future<SomeErrorsResult> getErrors2(String path) async {
+  Future<SomeErrorsResult> getErrors(String path) async {
     if (!_isAbsolutePath(path)) {
       return Future.value(
         InvalidPathResult(),
@@ -614,6 +614,18 @@
     return completer.future;
   }
 
+  /// Return a [Future] that completes with the [ErrorsResult] for the Dart
+  /// file with the given [path].
+  ///
+  /// The [path] must be absolute and normalized.
+  ///
+  /// This method does not use analysis priorities, and must not be used in
+  /// interactive analysis, such as Analysis Server or its plugins.
+  @Deprecated('Use getErrors() instead')
+  Future<SomeErrorsResult> getErrors2(String path) async {
+    return getErrors(path);
+  }
+
   /// Return a [Future] that completes with the list of added files that
   /// define a class member with the given [name].
   Future<List<String>> getFilesDefiningClassMemberName(String name) {
@@ -637,7 +649,7 @@
   /// Return the [FileResult] for the Dart file with the given [path].
   ///
   /// The [path] must be absolute and normalized.
-  SomeFileResult getFileSync2(String path) {
+  SomeFileResult getFileSync(String path) {
     if (!_isAbsolutePath(path)) {
       return InvalidPathResult();
     }
@@ -647,6 +659,14 @@
         _currentSession, path, file.uri, file.lineInfo, file.isPart);
   }
 
+  /// Return the [FileResult] for the Dart file with the given [path].
+  ///
+  /// The [path] must be absolute and normalized.
+  @Deprecated('Use getFileSync() instead')
+  SomeFileResult getFileSync2(String path) {
+    return getFileSync(path);
+  }
+
   /// Return a [Future] that completes with the [AnalysisDriverUnitIndex] for
   /// the file with the given [path], or with `null` if the file cannot be
   /// analyzed.
@@ -669,7 +689,7 @@
   /// Return a [Future] that completes with [LibraryElementResult] for the given
   /// [uri], which is either resynthesized from the provided external summary
   /// store, or built for a file to which the given [uri] is resolved.
-  Future<SomeLibraryElementResult> getLibraryByUri2(String uri) async {
+  Future<SomeLibraryElementResult> getLibraryByUri(String uri) async {
     var uriObj = Uri.parse(uri);
     var fileOr = _fsState.getFileForUri(uriObj);
     return fileOr.map(
@@ -682,7 +702,7 @@
           return NotLibraryButPartResult();
         }
 
-        var unitResult = await getUnitElement2(file.path);
+        var unitResult = await getUnitElement(file.path);
         if (unitResult is UnitElementResult) {
           return LibraryElementResultImpl(unitResult.element.library);
         }
@@ -704,26 +724,18 @@
     );
   }
 
-  /// Return a [ParsedLibraryResult] for the library with the given [path].
-  ///
-  /// Throw [ArgumentError] if the given [path] is not the defining compilation
-  /// unit for a library (that is, is a part of a library).
-  ///
-  /// The [path] must be absolute and normalized.
-  ParsedLibraryResult getParsedLibrary(String path) {
-    var result = getParsedLibrary2(path);
-
-    if (result is NotLibraryButPartResult) {
-      throw ArgumentError('Is a part: $path');
-    }
-
-    return result as ParsedLibraryResult;
+  /// Return a [Future] that completes with [LibraryElementResult] for the given
+  /// [uri], which is either resynthesized from the provided external summary
+  /// store, or built for a file to which the given [uri] is resolved.
+  @Deprecated('Use getLibraryByUri() instead')
+  Future<SomeLibraryElementResult> getLibraryByUri2(String uri) async {
+    return getLibraryByUri(uri);
   }
 
   /// Return a [ParsedLibraryResult] for the library with the given [path].
   ///
   /// The [path] must be absolute and normalized.
-  SomeParsedLibraryResult getParsedLibrary2(String path) {
+  SomeParsedLibraryResult getParsedLibrary(String path) {
     if (!_isAbsolutePath(path)) {
       return InvalidPathResult();
     }
@@ -741,7 +753,7 @@
     var units = <ParsedUnitResult>[];
     for (var unitFile in file.libraryFiles) {
       var unitPath = unitFile.path;
-      var unitResult = parseFileSync2(unitPath);
+      var unitResult = parseFileSync(unitPath);
       if (unitResult is! ParsedUnitResult) {
         return UnspecifiedInvalidResult();
       }
@@ -752,7 +764,7 @@
   }
 
   /// Return a [ParsedLibraryResult] for the library with the given [uri].
-  SomeParsedLibraryResult getParsedLibraryByUri2(Uri uri) {
+  SomeParsedLibraryResult getParsedLibraryByUri(Uri uri) {
     var fileOr = _fsState.getFileForUri(uri);
     return fileOr.map(
       (file) {
@@ -784,7 +796,7 @@
   /// state (including new states of the files previously reported using
   /// [changeFile]), prior to the next time the analysis state transitions
   /// to "idle".
-  Future<SomeResolvedLibraryResult> getResolvedLibrary2(String path) {
+  Future<SomeResolvedLibraryResult> getResolvedLibrary(String path) {
     if (!_isAbsolutePath(path)) {
       return Future.value(
         InvalidPathResult(),
@@ -824,7 +836,7 @@
   /// state (including new states of the files previously reported using
   /// [changeFile]), prior to the next time the analysis state transitions
   /// to "idle".
-  Future<SomeResolvedLibraryResult> getResolvedLibraryByUri2(Uri uri) {
+  Future<SomeResolvedLibraryResult> getResolvedLibraryByUri(Uri uri) {
     var fileOr = _fsState.getFileForUri(uri);
     return fileOr.map(
       (file) async {
@@ -834,7 +846,7 @@
         if (file.isPart) {
           return NotLibraryButPartResult();
         }
-        return getResolvedLibrary2(file.path);
+        return getResolvedLibrary(file.path);
       },
       (externalLibrary) async {
         return UriOfExternalLibraryResult();
@@ -859,7 +871,7 @@
   /// it, which is consistent with the current file state (including new states
   /// of the files previously reported using [changeFile]), prior to the next
   /// time the analysis state transitions to "idle".
-  Future<SomeResolvedUnitResult> getResult2(String path,
+  Future<SomeResolvedUnitResult> getResult(String path,
       {bool sendCachedToStream = false}) {
     if (!_isAbsolutePath(path)) {
       return Future.value(
@@ -893,9 +905,32 @@
     return completer.future;
   }
 
+  /// Return a [Future] that completes with a [SomeResolvedUnitResult] for the
+  /// Dart file with the given [path].  If the file cannot be analyzed,
+  /// the [Future] completes with an [InvalidResult].
+  ///
+  /// The [path] must be absolute and normalized.
+  ///
+  /// The [path] can be any file - explicitly or implicitly analyzed, or neither.
+  ///
+  /// If the driver has the cached analysis result for the file, it is returned.
+  /// If [sendCachedToStream] is `true`, then the result is also reported into
+  /// the [results] stream, just as if it were freshly computed.
+  ///
+  /// Otherwise causes the analysis state to transition to "analyzing" (if it is
+  /// not in that state already), the driver will produce the analysis result for
+  /// it, which is consistent with the current file state (including new states
+  /// of the files previously reported using [changeFile]), prior to the next
+  /// time the analysis state transitions to "idle".
+  @Deprecated('Use getResult() instead')
+  Future<SomeResolvedUnitResult> getResult2(String path,
+      {bool sendCachedToStream = false}) {
+    return getResult(path);
+  }
+
   /// Return a [Future] that completes with the [SomeUnitElementResult]
   /// for the file with the given [path].
-  Future<SomeUnitElementResult> getUnitElement2(String path) {
+  Future<SomeUnitElementResult> getUnitElement(String path) {
     if (!_isAbsolutePath(path)) {
       return Future.value(
         InvalidPathResult(),
@@ -943,6 +978,7 @@
   /// The parsing is performed in the method itself, and the result is not
   /// produced through the [results] stream (just because it is not a fully
   /// resolved unit).
+  @Deprecated('Use parseFileSync() instead')
   Future<SomeParsedUnitResult> parseFile2(String path) async {
     return parseFileSync2(path);
   }
@@ -956,7 +992,7 @@
   /// The parsing is performed in the method itself, and the result is not
   /// produced through the [results] stream (just because it is not a fully
   /// resolved unit).
-  SomeParsedUnitResult parseFileSync2(String path) {
+  SomeParsedUnitResult parseFileSync(String path) {
     if (!_isAbsolutePath(path)) {
       return InvalidPathResult();
     }
@@ -968,6 +1004,20 @@
         file.content, file.lineInfo, file.isPart, unit, listener.errors);
   }
 
+  /// Return a [ParsedUnitResult] for the file with the given [path].
+  ///
+  /// The [path] must be absolute and normalized.
+  ///
+  /// The [path] can be any file - explicitly or implicitly analyzed, or neither.
+  ///
+  /// The parsing is performed in the method itself, and the result is not
+  /// produced through the [results] stream (just because it is not a fully
+  /// resolved unit).
+  @Deprecated('Use parseFileSync() instead')
+  SomeParsedUnitResult parseFileSync2(String path) {
+    return parseFileSync(path);
+  }
+
   @override
   Future<void> performWork() async {
     if (_fileTracker.verifyChangedFilesIfNeeded()) {
@@ -1450,6 +1500,8 @@
         currentSession,
         path,
         file.uri,
+        file.lineInfo,
+        file.isPart,
         library.transitiveSignature,
         element,
       );
diff --git a/pkg/analyzer/lib/src/dart/analysis/results.dart b/pkg/analyzer/lib/src/dart/analysis/results.dart
index e89beb5..5f03c26 100644
--- a/pkg/analyzer/lib/src/dart/analysis/results.dart
+++ b/pkg/analyzer/lib/src/dart/analysis/results.dart
@@ -249,7 +249,7 @@
   TypeSystemImpl get typeSystem => libraryElement.typeSystem as TypeSystemImpl;
 }
 
-class UnitElementResultImpl extends AnalysisResultImpl
+class UnitElementResultImpl extends FileResultImpl
     implements UnitElementResult {
   @override
   final String signature;
@@ -258,8 +258,8 @@
   final CompilationUnitElement element;
 
   UnitElementResultImpl(AnalysisSession session, String path, Uri uri,
-      this.signature, this.element)
-      : super(session, path, uri);
+      LineInfo lineInfo, bool isPart, this.signature, this.element)
+      : super(session, path, uri, lineInfo, isPart);
 
   @Deprecated('Check for specific Result subtypes instead')
   @override
diff --git a/pkg/analyzer/lib/src/dart/analysis/search.dart b/pkg/analyzer/lib/src/dart/analysis/search.dart
index 9a79ce1..4e0449b 100644
--- a/pkg/analyzer/lib/src/dart/analysis/search.dart
+++ b/pkg/analyzer/lib/src/dart/analysis/search.dart
@@ -54,7 +54,7 @@
     List<String> files = await _driver.getFilesDefiningClassMemberName(name);
     for (String file in files) {
       if (searchedFiles.add(file, this)) {
-        var unitResult = await _driver.getUnitElement2(file);
+        var unitResult = await _driver.getUnitElement(file);
         if (unitResult is UnitElementResult) {
           unitResult.element.classes.forEach(addElements);
           unitResult.element.mixins.forEach(addElements);
@@ -175,7 +175,7 @@
 
     List<FileState> knownFiles = _driver.fsState.knownFiles.toList();
     for (FileState file in knownFiles) {
-      var unitResult = await _driver.getUnitElement2(file.path);
+      var unitResult = await _driver.getUnitElement(file.path);
       if (unitResult is UnitElementResult) {
         CompilationUnitElement unitElement = unitResult.element;
         unitElement.accessors.forEach(addElement);
@@ -284,7 +284,7 @@
   }
 
   Future<CompilationUnitElement?> _getUnitElement(String file) async {
-    var result = await _driver.getUnitElement2(file);
+    var result = await _driver.getUnitElement(file);
     return result is UnitElementResult ? result.element : null;
   }
 
@@ -391,7 +391,7 @@
     LibraryElement libraryElement = element.library;
     for (CompilationUnitElement unitElement in libraryElement.units) {
       String unitPath = unitElement.source.fullName;
-      var unitResult = await _driver.getResult2(unitPath);
+      var unitResult = await _driver.getResult(unitPath);
       if (unitResult is ResolvedUnitResult) {
         var visitor = _ImportElementReferencesVisitor(element, unitElement);
         unitResult.unit.accept(visitor);
@@ -411,7 +411,7 @@
     List<SearchResult> results = <SearchResult>[];
     for (CompilationUnitElement unitElement in element.units) {
       String unitPath = unitElement.source.fullName;
-      var unitResult = await _driver.getResult2(unitPath);
+      var unitResult = await _driver.getResult(unitPath);
       if (unitResult is ResolvedUnitResult) {
         CompilationUnit unit = unitResult.unit;
         for (Directive directive in unit.directives) {
@@ -441,7 +441,7 @@
     }
 
     // Prepare the unit.
-    var unitResult = await _driver.getResult2(path);
+    var unitResult = await _driver.getResult(path);
     if (unitResult is! ResolvedUnitResult) {
       return const <SearchResult>[];
     }
@@ -494,7 +494,7 @@
     LibraryElement libraryElement = element.library;
     for (CompilationUnitElement unitElement in libraryElement.units) {
       String unitPath = unitElement.source.fullName;
-      var unitResult = await _driver.getResult2(unitPath);
+      var unitResult = await _driver.getResult(unitPath);
       if (unitResult is ResolvedUnitResult) {
         var visitor = _LocalReferencesVisitor(element, unitElement);
         unitResult.unit.accept(visitor);
diff --git a/pkg/analyzer/lib/src/dart/analysis/session.dart b/pkg/analyzer/lib/src/dart/analysis/session.dart
index 5bc5a9c..319ddc6 100644
--- a/pkg/analyzer/lib/src/dart/analysis/session.dart
+++ b/pkg/analyzer/lib/src/dart/analysis/session.dart
@@ -57,7 +57,7 @@
   @override
   Future<SomeErrorsResult> getErrors(String path) {
     _checkConsistency();
-    return _driver.getErrors2(path);
+    return _driver.getErrors(path);
   }
 
   @Deprecated('Use getErrors() instead')
@@ -69,7 +69,7 @@
   @override
   SomeFileResult getFile(String path) {
     _checkConsistency();
-    return _driver.getFileSync2(path);
+    return _driver.getFileSync(path);
   }
 
   @Deprecated('Use getFile() instead')
@@ -81,7 +81,7 @@
   @override
   Future<SomeLibraryElementResult> getLibraryByUri(String uri) {
     _checkConsistency();
-    return _driver.getLibraryByUri2(uri);
+    return _driver.getLibraryByUri(uri);
   }
 
   @Deprecated('Use getLibraryByUri() instead')
@@ -93,7 +93,7 @@
   @override
   SomeParsedLibraryResult getParsedLibrary(String path) {
     _checkConsistency();
-    return _driver.getParsedLibrary2(path);
+    return _driver.getParsedLibrary(path);
   }
 
   @Deprecated('Use getParsedLibrary() instead')
@@ -110,7 +110,7 @@
       return NotElementOfThisSessionResult();
     }
 
-    return _driver.getParsedLibraryByUri2(element.source.uri);
+    return _driver.getParsedLibraryByUri(element.source.uri);
   }
 
   @Deprecated('Use getParsedLibraryByElement() instead')
@@ -122,7 +122,7 @@
   @override
   SomeParsedUnitResult getParsedUnit(String path) {
     _checkConsistency();
-    return _driver.parseFileSync2(path);
+    return _driver.parseFileSync(path);
   }
 
   @Deprecated('Use getParsedUnit() instead')
@@ -134,7 +134,7 @@
   @override
   Future<SomeResolvedLibraryResult> getResolvedLibrary(String path) {
     _checkConsistency();
-    return _driver.getResolvedLibrary2(path);
+    return _driver.getResolvedLibrary(path);
   }
 
   @Deprecated('Use getResolvedLibrary() instead')
@@ -155,7 +155,7 @@
       );
     }
 
-    return _driver.getResolvedLibraryByUri2(element.source.uri);
+    return _driver.getResolvedLibraryByUri(element.source.uri);
   }
 
   @Deprecated('Use getResolvedLibraryByElement() instead')
@@ -169,7 +169,7 @@
   @override
   Future<SomeResolvedUnitResult> getResolvedUnit(String path) {
     _checkConsistency();
-    return _driver.getResult2(path);
+    return _driver.getResult(path);
   }
 
   @Deprecated('Use getResolvedUnit() instead')
@@ -181,7 +181,7 @@
   @override
   Future<SomeUnitElementResult> getUnitElement(String path) {
     _checkConsistency();
-    return _driver.getUnitElement2(path);
+    return _driver.getUnitElement(path);
   }
 
   @Deprecated('Use getUnitElement() instead')
diff --git a/pkg/analyzer/lib/src/test_utilities/mock_sdk.dart b/pkg/analyzer/lib/src/test_utilities/mock_sdk.dart
index 994bd26..198b6a8 100644
--- a/pkg/analyzer/lib/src/test_utilities/mock_sdk.dart
+++ b/pkg/analyzer/lib/src/test_utilities/mock_sdk.dart
@@ -318,13 +318,6 @@
 }
 
 abstract class double extends num {
-  // TODO: remove these old constants when no tests rely on them.
-  static const double NAN = 0.0 / 0.0;
-  static const double INFINITY = 1.0 / 0.0;
-  static const double NEGATIVE_INFINITY = -INFINITY;
-  static const double MIN_POSITIVE = 5e-324;
-  static const double MAX_FINITE = 1.7976931348623157e+308;
-
   static const double nan = 0.0 / 0.0;
   static const double infinity = 1.0 / 0.0;
   static const double negativeInfinity = -infinity;
diff --git a/pkg/analyzer/pubspec.yaml b/pkg/analyzer/pubspec.yaml
index d4a3f0f..76dc2d2 100644
--- a/pkg/analyzer/pubspec.yaml
+++ b/pkg/analyzer/pubspec.yaml
@@ -1,5 +1,5 @@
 name: analyzer
-version: 2.7.0
+version: 2.8.0-dev
 description: This package provides a library that performs static analysis of Dart code.
 homepage: https://github.com/dart-lang/sdk/tree/main/pkg/analyzer
 
diff --git a/pkg/analyzer/test/generated/non_error_resolver_test.dart b/pkg/analyzer/test/generated/non_error_resolver_test.dart
index 3770d7c..bf708fc 100644
--- a/pkg/analyzer/test/generated/non_error_resolver_test.dart
+++ b/pkg/analyzer/test/generated/non_error_resolver_test.dart
@@ -1012,7 +1012,7 @@
   const A(x);
 }
 main() {
-  const A(double.INFINITY);
+  const A(double.infinity);
 }
 ''');
   }
@@ -2382,7 +2382,7 @@
 
   test_nonConstantDefaultValue_constField() async {
     await assertNoErrorsInCode(r'''
-f([a = double.INFINITY]) {
+f([a = double.infinity]) {
 }
 ''');
   }
@@ -2457,7 +2457,7 @@
   test_nonConstListElement_constField() async {
     await assertNoErrorsInCode(r'''
 main() {
-  const [double.INFINITY];
+  const [double.infinity];
 }
 ''');
   }
@@ -2491,7 +2491,7 @@
   test_nonConstMapValue_constField() async {
     await assertNoErrorsInCode(r'''
 main() {
-  const {0: double.INFINITY};
+  const {0: double.infinity};
 }
 ''');
   }
diff --git a/pkg/analyzer/test/generated/statement_parser_test.dart b/pkg/analyzer/test/generated/statement_parser_test.dart
index 5e90e69..ff93ba2 100644
--- a/pkg/analyzer/test/generated/statement_parser_test.dart
+++ b/pkg/analyzer/test/generated/statement_parser_test.dart
@@ -1079,7 +1079,7 @@
   }
 
   void test_parseNonLabeledStatement_typeCast() {
-    var statement = parseStatement('double.NAN as num;') as ExpressionStatement;
+    var statement = parseStatement('double.nan as num;') as ExpressionStatement;
     assertNoErrors();
     expect(statement.expression, isNotNull);
   }
diff --git a/pkg/analyzer/test/src/dart/analysis/driver_test.dart b/pkg/analyzer/test/src/dart/analysis/driver_test.dart
index 59cdc3b..8ab312a 100644
--- a/pkg/analyzer/test/src/dart/analysis/driver_test.dart
+++ b/pkg/analyzer/test/src/dart/analysis/driver_test.dart
@@ -199,7 +199,7 @@
     driver1.priorityFiles = [a];
     driver2.priorityFiles = [a];
 
-    var result = await driver2.getResult2(b) as ResolvedUnitResult;
+    var result = await driver2.getResult(b) as ResolvedUnitResult;
     expect(result.path, b);
 
     await scheduler.status.firstWhere((status) => status.isIdle);
@@ -579,7 +579,7 @@
 
     // Get the (cached) result, reported to the stream.
     {
-      var result2 = await driver.getResult2(a, sendCachedToStream: true);
+      var result2 = await driver.getResult(a, sendCachedToStream: true);
       expect(result2, same(result1));
 
       expect(allResults, hasLength(1));
@@ -1262,21 +1262,21 @@
     expect(allResults, isEmpty);
 
     {
-      var result = await driver.getResolvedLibrary2(templatePath);
+      var result = await driver.getResolvedLibrary(templatePath);
       expect(result, isA<NotPathOfUriResult>());
       expect(allExceptions, isEmpty);
       expect(allResults, isEmpty);
     }
 
     {
-      var result = await driver.getResult2(templatePath);
+      var result = await driver.getResult(templatePath);
       expect(result, isA<NotPathOfUriResult>());
       expect(allExceptions, isEmpty);
       expect(allResults, isEmpty);
     }
 
     {
-      var result = await driver.getUnitElement2(templatePath);
+      var result = await driver.getUnitElement(templatePath);
       expect(result, isA<NotPathOfUriResult>());
       expect(allExceptions, isEmpty);
       expect(allResults, isEmpty);
@@ -1303,18 +1303,18 @@
     expect(driver.getCachedResult(a), same(result));
   }
 
-  test_getErrors2() async {
+  test_getErrors() async {
     String content = 'int f() => 42 + bar();';
     addTestFile(content, priority: true);
 
-    var result = await driver.getErrors2(testFile) as ErrorsResult;
+    var result = await driver.getErrors(testFile) as ErrorsResult;
     expect(result.path, testFile);
     expect(result.uri.toString(), 'package:test/test.dart');
     expect(result.errors, hasLength(1));
   }
 
-  test_getErrors2_notAbsolutePath() async {
-    var result = await driver.getErrors2('not_absolute.dart');
+  test_getErrors_notAbsolutePath() async {
+    var result = await driver.getErrors('not_absolute.dart');
     expect(result, isA<InvalidPathResult>());
   }
 
@@ -1421,7 +1421,7 @@
     expect(files, isNot(contains(c)));
   }
 
-  test_getFileSync2_changedFile() async {
+  test_getFileSync_changedFile() async {
     var a = convertPath('/test/lib/a.dart');
     var b = convertPath('/test/lib/b.dart');
 
@@ -1458,7 +1458,7 @@
     expect((await driver.getResultValid(b)).errors, isEmpty);
   }
 
-  test_getFileSync2_library() async {
+  test_getFileSync_library() async {
     var path = convertPath('/test/lib/a.dart');
     newFile(path);
     var file = driver.getFileSyncValid(path);
@@ -1467,12 +1467,12 @@
     expect(file.isPart, isFalse);
   }
 
-  test_getFileSync2_notAbsolutePath() async {
-    var result = driver.getFileSync2('not_absolute.dart');
+  test_getFileSync_notAbsolutePath() async {
+    var result = driver.getFileSync('not_absolute.dart');
     expect(result, isA<InvalidPathResult>());
   }
 
-  test_getFileSync2_part() async {
+  test_getFileSync_part() async {
     var path = convertPath('/test/lib/a.dart');
     newFile(path, content: 'part of lib;');
     var file = driver.getFileSyncValid(path);
@@ -1504,7 +1504,7 @@
     }, throwsArgumentError);
   }
 
-  test_getLibraryByUri2() async {
+  test_getLibraryByUri() async {
     var a = '/test/lib/a.dart';
     var b = '/test/lib/b.dart';
 
@@ -1523,27 +1523,27 @@
 class B {}
 ''');
 
-    var result = await driver.getLibraryByUri2(aUriStr);
+    var result = await driver.getLibraryByUri(aUriStr);
     result as LibraryElementResult;
     expect(result.element.getType('A'), isNotNull);
     expect(result.element.getType('B'), isNotNull);
 
     // It is an error to ask for a library when we know that it is a part.
     expect(
-      await driver.getLibraryByUri2(bUriStr),
+      await driver.getLibraryByUri(bUriStr),
       isA<NotLibraryButPartResult>(),
     );
   }
 
-  test_getLibraryByUri2_unresolvedUri() async {
-    var result = await driver.getLibraryByUri2('package:foo/foo.dart');
+  test_getLibraryByUri_unresolvedUri() async {
+    var result = await driver.getLibraryByUri('package:foo/foo.dart');
     expect(result, isA<CannotResolveUriResult>());
   }
 
-  test_getParsedLibrary2() async {
+  test_getParsedLibrary() async {
     var content = 'class A {}';
     addTestFile(content);
-    var result = driver.getParsedLibrary2(testFile);
+    var result = driver.getParsedLibrary(testFile);
     result as ParsedLibraryResult;
     expect(result.units, hasLength(1));
     expect(result.units[0].path, testFile);
@@ -1552,23 +1552,23 @@
     expect(result.units[0].errors, isEmpty);
   }
 
-  test_getParsedLibrary2_invalidPath_notAbsolute() async {
-    var result = driver.getParsedLibrary2('not_absolute.dart');
+  test_getParsedLibrary_invalidPath_notAbsolute() async {
+    var result = driver.getParsedLibrary('not_absolute.dart');
     expect(result, isA<InvalidPathResult>());
   }
 
-  test_getParsedLibrary2_notLibraryButPart() async {
+  test_getParsedLibrary_notLibraryButPart() async {
     addTestFile('part of my;');
-    var result = driver.getParsedLibrary2(testFile);
+    var result = driver.getParsedLibrary(testFile);
     expect(result, isA<NotLibraryButPartResult>());
   }
 
-  test_getParsedLibraryByUri2() async {
+  test_getParsedLibraryByUri() async {
     var content = 'class A {}';
     addTestFile(content);
 
     var uri = Uri.parse('package:test/test.dart');
-    var result = driver.getParsedLibraryByUri2(uri);
+    var result = driver.getParsedLibraryByUri(uri);
     result as ParsedLibraryResult;
     expect(result.uri, uri);
     expect(result.units, hasLength(1));
@@ -1577,24 +1577,24 @@
     expect(result.units[0].content, content);
   }
 
-  test_getParsedLibraryByUri2_notLibrary() async {
+  test_getParsedLibraryByUri_notLibrary() async {
     addTestFile('part of my;');
 
     var uri = Uri.parse('package:test/test.dart');
-    var result = driver.getParsedLibraryByUri2(uri);
+    var result = driver.getParsedLibraryByUri(uri);
     expect(result, isA<NotLibraryButPartResult>());
   }
 
-  test_getParsedLibraryByUri2_unresolvedUri() async {
+  test_getParsedLibraryByUri_unresolvedUri() async {
     var uri = Uri.parse('package:unknown/a.dart');
-    var result = driver.getParsedLibraryByUri2(uri);
+    var result = driver.getParsedLibraryByUri(uri);
     expect(result, isA<CannotResolveUriResult>());
   }
 
-  test_getResolvedLibrary2() async {
+  test_getResolvedLibrary() async {
     var content = 'class A {}';
     addTestFile(content);
-    var result = await driver.getResolvedLibrary2(testFile);
+    var result = await driver.getResolvedLibrary(testFile);
     result as ResolvedLibraryResult;
     expect(result.units, hasLength(1));
     expect(result.units[0].path, testFile);
@@ -1603,23 +1603,23 @@
     expect(result.units[0].errors, isEmpty);
   }
 
-  test_getResolvedLibrary2_invalidPath_notAbsolute() async {
-    var result = await driver.getResolvedLibrary2('not_absolute.dart');
+  test_getResolvedLibrary_invalidPath_notAbsolute() async {
+    var result = await driver.getResolvedLibrary('not_absolute.dart');
     expect(result, isA<InvalidPathResult>());
   }
 
-  test_getResolvedLibrary2_notLibraryButPart() async {
+  test_getResolvedLibrary_notLibraryButPart() async {
     addTestFile('part of my;');
-    var result = await driver.getResolvedLibrary2(testFile);
+    var result = await driver.getResolvedLibrary(testFile);
     expect(result, isA<NotLibraryButPartResult>());
   }
 
-  test_getResolvedLibraryByUri2() async {
+  test_getResolvedLibraryByUri() async {
     var content = 'class A {}';
     addTestFile(content);
 
     var uri = Uri.parse('package:test/test.dart');
-    var result = await driver.getResolvedLibraryByUri2(uri);
+    var result = await driver.getResolvedLibraryByUri(uri);
     result as ResolvedLibraryResult;
     expect(result.uri, uri);
     expect(result.element.source.fullName, testFile);
@@ -1629,17 +1629,17 @@
     expect(result.units[0].content, content);
   }
 
-  test_getResolvedLibraryByUri2_notLibrary() async {
+  test_getResolvedLibraryByUri_notLibrary() async {
     addTestFile('part of my;');
 
     var uri = Uri.parse('package:test/test.dart');
-    var result = await driver.getResolvedLibraryByUri2(uri);
+    var result = await driver.getResolvedLibraryByUri(uri);
     expect(result, isA<NotLibraryButPartResult>());
   }
 
-  test_getResolvedLibraryByUri2_unresolvedUri() async {
+  test_getResolvedLibraryByUri_unresolvedUri() async {
     var uri = Uri.parse('package:unknown/a.dart');
-    var result = await driver.getResolvedLibraryByUri2(uri);
+    var result = await driver.getResolvedLibraryByUri(uri);
     expect(result, isA<CannotResolveUriResult>());
   }
 
@@ -1663,11 +1663,6 @@
     expect(allResults, [result]);
   }
 
-  test_getResult2_invalidPath_notAbsolute() async {
-    var result = await driver.getResult2('not_absolute.dart');
-    expect(result, isA<InvalidPathResult>());
-  }
-
   test_getResult_constants_defaultParameterValue_localFunction() async {
     var a = convertPath('/test/bin/a.dart');
     var b = convertPath('/test/bin/b.dart');
@@ -1833,6 +1828,11 @@
     expect(a.name.staticElement, isFunctionElement);
   }
 
+  test_getResult_invalidPath_notAbsolute() async {
+    var result = await driver.getResult('not_absolute.dart');
+    expect(result, isA<InvalidPathResult>());
+  }
+
   test_getResult_invalidUri() async {
     String content = r'''
 import ':[invalid uri]';
@@ -2115,7 +2115,7 @@
     expect(result1.unit, isNotNull);
   }
 
-  test_getUnitElement2() async {
+  test_getUnitElement() async {
     String content = r'''
 foo(int p) {}
 main() {
@@ -2124,7 +2124,7 @@
 ''';
     addTestFile(content);
 
-    var unitResult = await driver.getUnitElement2(testFile);
+    var unitResult = await driver.getUnitElement(testFile);
     unitResult as UnitElementResult;
     CompilationUnitElement unitElement = unitResult.element;
     expect(unitElement.source.fullName, testFile);
@@ -2132,7 +2132,7 @@
         unorderedEquals(['foo', 'main']));
   }
 
-  test_getUnitElement2_doesNotExist_afterResynthesized() async {
+  test_getUnitElement_doesNotExist_afterResynthesized() async {
     var a = convertPath('/test/lib/a.dart');
     var b = convertPath('/test/lib/b.dart');
 
@@ -2140,19 +2140,19 @@
 import 'package:test/b.dart';
 ''');
 
-    await driver.getResolvedLibrary2(a);
-    await driver.getUnitElement2(b);
+    await driver.getResolvedLibrary(a);
+    await driver.getUnitElement(b);
   }
 
-  test_getUnitElement2_invalidPath_notAbsolute() async {
-    var result = await driver.getUnitElement2('not_absolute.dart');
+  test_getUnitElement_invalidPath_notAbsolute() async {
+    var result = await driver.getUnitElement('not_absolute.dart');
     expect(result, isA<InvalidPathResult>());
   }
 
-  test_getUnitElement2_notDart() async {
+  test_getUnitElement_notDart() async {
     var path = convertPath('/test.txt');
     newFile(path, content: 'class A {}');
-    var unitResult = await driver.getUnitElement2(path);
+    var unitResult = await driver.getUnitElement(path);
     unitResult as UnitElementResult;
     expect(unitResult.element.classes.map((e) => e.name), ['A']);
   }
@@ -2353,7 +2353,7 @@
     getFile(asyncPath).delete();
     addTestFile('class C {}');
 
-    var result = await driver.getErrors2(testFile) as ErrorsResult;
+    var result = await driver.getErrors(testFile) as ErrorsResult;
     expect(result.errors, hasLength(1));
 
     AnalysisError error = result.errors[0];
@@ -2365,14 +2365,14 @@
     getFile(corePath).delete();
     addTestFile('class C {}');
 
-    var result = await driver.getErrors2(testFile) as ErrorsResult;
+    var result = await driver.getErrors(testFile) as ErrorsResult;
     expect(result.errors, hasLength(1));
 
     AnalysisError error = result.errors[0];
     expect(error.errorCode, CompileTimeErrorCode.MISSING_DART_LIBRARY);
   }
 
-  test_parseFile2_changedFile() async {
+  test_parseFileSync_changedFile() async {
     var a = convertPath('/test/lib/a.dart');
     var b = convertPath('/test/lib/b.dart');
 
@@ -2397,7 +2397,7 @@
     // Library cycles are compared by their identity, so we would try to
     // reload linked summary for [a.dart], and crash.
     {
-      var parseResult = await driver.parseFile2(a) as ParsedUnitResult;
+      var parseResult = driver.parseFileSync(a) as ParsedUnitResult;
       expect(parseResult.unit.declarations, isEmpty);
     }
 
@@ -2412,7 +2412,7 @@
 
     // So, `class A {}` is declared now.
     {
-      var parseResult = driver.parseFileSync2(a) as ParsedUnitResult;
+      var parseResult = driver.parseFileSync(a) as ParsedUnitResult;
       expect(parseResult.unit.declarations, hasLength(1));
     }
     {
@@ -2421,70 +2421,7 @@
     }
   }
 
-  test_parseFile2_notAbsolutePath() async {
-    var result = await driver.parseFile2('not_absolute.dart');
-    expect(result, isA<InvalidPathResult>());
-  }
-
-  test_parseFile2_notDart() async {
-    var p = convertPath('/test/bin/a.txt');
-    newFile(p, content: 'class A {}');
-
-    var parseResult = await driver.parseFile2(p) as ParsedUnitResult;
-    expect(parseResult, isNotNull);
-    expect(driver.knownFiles, contains(p));
-  }
-
-  test_parseFileSync2_changedFile() async {
-    var a = convertPath('/test/lib/a.dart');
-    var b = convertPath('/test/lib/b.dart');
-
-    newFile(a, content: '');
-    newFile(b, content: r'''
-import 'a.dart';
-
-void f(A a) {}
-''');
-
-    // Ensure that [a.dart] library cycle is loaded.
-    // So, `a.dart` is in the library context.
-    await driver.getResultValid(a);
-
-    // Update the file, changing its API signature.
-    // Note that we don't call `changeFile`.
-    newFile(a, content: 'class A {}');
-
-    // Parse the file.
-    // We have not called `changeFile(a)`, so we should not read the file.
-    // Moreover, doing this will create a new library cycle [a.dart].
-    // Library cycles are compared by their identity, so we would try to
-    // reload linked summary for [a.dart], and crash.
-    {
-      var parseResult = driver.parseFileSync2(a) as ParsedUnitResult;
-      expect(parseResult.unit.declarations, isEmpty);
-    }
-
-    // We have not read `a.dart`, so `A` is still not declared.
-    {
-      var bResult = await driver.getResultValid(b);
-      expect(bResult.errors, isNotEmpty);
-    }
-
-    // Notify the driver that the file was changed.
-    driver.changeFile(a);
-
-    // So, `class A {}` is declared now.
-    {
-      var parseResult = driver.parseFileSync2(a) as ParsedUnitResult;
-      expect(parseResult.unit.declarations, hasLength(1));
-    }
-    {
-      var bResult = await driver.getResultValid(b);
-      expect(bResult.errors, isEmpty);
-    }
-  }
-
-  test_parseFileSync2_doesNotReadImportedFiles() async {
+  test_parseFileSync_doesNotReadImportedFiles() async {
     var a = convertPath('/test/lib/a.dart');
     var b = convertPath('/test/lib/b.dart');
 
@@ -2496,15 +2433,15 @@
     expect(driver.fsState.knownFilePaths, isEmpty);
 
     // Don't read `a.dart` when parse.
-    driver.parseFileSync2(b);
+    driver.parseFileSync(b);
     expect(driver.fsState.knownFilePaths, unorderedEquals([b]));
 
     // Still don't read `a.dart` when parse the second time.
-    driver.parseFileSync2(b);
+    driver.parseFileSync(b);
     expect(driver.fsState.knownFilePaths, unorderedEquals([b]));
   }
 
-  test_parseFileSync2_doesNotReadPartedFiles() async {
+  test_parseFileSync_doesNotReadPartedFiles() async {
     var a = convertPath('/test/lib/a.dart');
     var b = convertPath('/test/lib/b.dart');
 
@@ -2519,15 +2456,15 @@
     expect(driver.fsState.knownFilePaths, isEmpty);
 
     // Don't read `a.dart` when parse.
-    driver.parseFileSync2(b);
+    driver.parseFileSync(b);
     expect(driver.fsState.knownFilePaths, unorderedEquals([b]));
 
     // Still don't read `a.dart` when parse the second time.
-    driver.parseFileSync2(b);
+    driver.parseFileSync(b);
     expect(driver.fsState.knownFilePaths, unorderedEquals([b]));
   }
 
-  test_parseFileSync2_languageVersion() async {
+  test_parseFileSync_languageVersion() async {
     var path = convertPath('/test/lib/test.dart');
 
     newFile(path, content: r'''
@@ -2535,33 +2472,33 @@
 class A {}
 ''');
 
-    var parseResult = driver.parseFileSync2(path) as ParsedUnitResult;
+    var parseResult = driver.parseFileSync(path) as ParsedUnitResult;
     var languageVersion = parseResult.unit.languageVersionToken!;
     expect(languageVersion.major, 2);
     expect(languageVersion.minor, 7);
   }
 
-  test_parseFileSync2_languageVersion_null() async {
+  test_parseFileSync_languageVersion_null() async {
     var path = convertPath('/test/lib/test.dart');
 
     newFile(path, content: r'''
 class A {}
 ''');
 
-    var parseResult = driver.parseFileSync2(path) as ParsedUnitResult;
+    var parseResult = driver.parseFileSync(path) as ParsedUnitResult;
     expect(parseResult.unit.languageVersionToken, isNull);
   }
 
-  test_parseFileSync2_notAbsolutePath() {
-    var result = driver.parseFileSync2('not_absolute.dart');
+  test_parseFileSync_notAbsolutePath() async {
+    var result = driver.parseFileSync('not_absolute.dart');
     expect(result, isA<InvalidPathResult>());
   }
 
-  test_parseFileSync2_notDart() {
+  test_parseFileSync_notDart() async {
     var p = convertPath('/test/bin/a.txt');
     newFile(p, content: 'class A {}');
 
-    var parseResult = driver.parseFileSync2(p) as ParsedUnitResult;
+    var parseResult = driver.parseFileSync(p) as ParsedUnitResult;
     expect(parseResult, isNotNull);
     expect(driver.knownFiles, contains(p));
   }
@@ -2591,13 +2528,13 @@
 
     // Process a.dart so that we know that it's a library for c.dart later.
     {
-      var result = await driver.getErrors2(a) as ErrorsResult;
+      var result = await driver.getErrors(a) as ErrorsResult;
       expect(result.errors, isEmpty);
     }
 
     // c.dart does not have errors in the context of a.dart
     {
-      var result = await driver.getErrors2(c) as ErrorsResult;
+      var result = await driver.getErrors(c) as ErrorsResult;
       expect(result.errors, isEmpty);
     }
   }
@@ -2627,7 +2564,7 @@
 
     // c.dart is resolve in the context of a.dart, so have no errors
     {
-      var result = await driver.getErrors2(c) as ErrorsResult;
+      var result = await driver.getErrors(c) as ErrorsResult;
       expect(result.errors, isEmpty);
     }
   }
@@ -2746,7 +2683,7 @@
     expect(result.unit, isNotNull);
   }
 
-  test_part_getUnitElement2_afterLibrary() async {
+  test_part_getUnitElement_afterLibrary() async {
     var a = convertPath('/test/lib/a.dart');
     var b = convertPath('/test/lib/b.dart');
     var c = convertPath('/test/lib/c.dart');
@@ -2774,7 +2711,7 @@
 
     // c.dart is resolve in the context of a.dart, knows 'A' and 'B'.
     {
-      var result = await driver.getUnitElement2(c);
+      var result = await driver.getUnitElement(c);
       result as UnitElementResult;
       var partUnit = result.element;
 
@@ -2786,7 +2723,7 @@
     }
   }
 
-  test_part_getUnitElement2_beforeLibrary() async {
+  test_part_getUnitElement_beforeLibrary() async {
     var a = convertPath('/test/lib/a.dart');
     var b = convertPath('/test/lib/b.dart');
     var c = convertPath('/test/lib/c.dart');
@@ -2811,7 +2748,7 @@
 
     // c.dart is resolve in the context of a.dart, knows 'A' and 'B'.
     {
-      var result = await driver.getUnitElement2(c);
+      var result = await driver.getUnitElement(c);
       result as UnitElementResult;
       var partUnit = result.element;
 
@@ -2823,7 +2760,7 @@
     }
   }
 
-  test_part_getUnitElement2_noLibrary() async {
+  test_part_getUnitElement_noLibrary() async {
     var c = convertPath('/test/lib/c.dart');
     newFile(c, content: r'''
 part of a;
@@ -2836,7 +2773,7 @@
     // We don't know the library of c.dart, but we should get a result.
     // The types "A" and "B" are unresolved.
     {
-      var result = await driver.getUnitElement2(c);
+      var result = await driver.getUnitElement(c);
       result as UnitElementResult;
       var partUnit = result.element;
 
@@ -3423,7 +3360,7 @@
 
 extension on AnalysisDriver {
   FileResult getFileSyncValid(String path) {
-    return getFileSync2(path) as FileResult;
+    return getFileSync(path) as FileResult;
   }
 
   Set<String> get loadedLibraryUriSet {
@@ -3448,10 +3385,10 @@
   }
 
   Future<ResolvedUnitResult> getResultValid(String path) async {
-    return await getResult2(path) as ResolvedUnitResult;
+    return await getResult(path) as ResolvedUnitResult;
   }
 
   Future<LibraryElementResult> getLibraryByUriValid(String uriStr) async {
-    return await getLibraryByUri2(uriStr) as LibraryElementResult;
+    return await getLibraryByUri(uriStr) as LibraryElementResult;
   }
 }
diff --git a/pkg/analyzer/test/src/dart/analysis/search_test.dart b/pkg/analyzer/test/src/dart/analysis/search_test.dart
index 9512ac4..700ec3d 100644
--- a/pkg/analyzer/test/src/dart/analysis/search_test.dart
+++ b/pkg/analyzer/test/src/dart/analysis/search_test.dart
@@ -468,7 +468,7 @@
 ''');
     var element = findElement.unnamedConstructor('A');
 
-    var otherUnitResult = await driver.getResult2(other) as ResolvedUnitResult;
+    var otherUnitResult = await driver.getResult(other) as ResolvedUnitResult;
     CompilationUnit otherUnit = otherUnitResult.unit;
     Element main = otherUnit.declaredElement!.functions[0];
     var expected = [
@@ -1894,7 +1894,7 @@
 ''');
 
     var aLibraryResult =
-        await driver.getLibraryByUri2(aUri) as LibraryElementResult;
+        await driver.getLibraryByUri(aUri) as LibraryElementResult;
     ClassElement aClass = aLibraryResult.element.getType('A')!;
 
     // Search by 'type'.
@@ -1940,7 +1940,7 @@
     newFile(cccFilePath, content: 'class C implements List {}');
 
     var coreLibResult =
-        await driver.getLibraryByUri2('dart:core') as LibraryElementResult;
+        await driver.getLibraryByUri('dart:core') as LibraryElementResult;
     ClassElement listElement = coreLibResult.element.getType('List')!;
 
     var searchedFiles = SearchedFiles();
diff --git a/pkg/analyzer/test/src/dart/analysis/session_test.dart b/pkg/analyzer/test/src/dart/analysis/session_test.dart
index 564c216..d9f6f0f 100644
--- a/pkg/analyzer/test/src/dart/analysis/session_test.dart
+++ b/pkg/analyzer/test/src/dart/analysis/session_test.dart
@@ -27,7 +27,7 @@
 @reflectiveTest
 class AnalysisSessionImpl_BazelWorkspaceTest
     extends BazelWorkspaceResolutionTest {
-  void test_getErrors2_notFileOfUri() async {
+  void test_getErrors_notFileOfUri() async {
     var relPath = 'dart/my/lib/a.dart';
     newFile('$workspaceRootPath/bazel-bin/$relPath');
 
@@ -37,7 +37,7 @@
     expect(result, isA<NotPathOfUriResult>());
   }
 
-  void test_getErrors2_valid() async {
+  void test_getErrors_valid() async {
     var file = newFile(
       '$workspaceRootPath/dart/my/lib/a.dart',
       content: 'var x = 0',
@@ -50,7 +50,7 @@
     expect(result.uri.toString(), 'package:dart.my/a.dart');
   }
 
-  void test_getParsedLibrary2_notFileOfUri() async {
+  void test_getParsedLibrary_notFileOfUri() async {
     var relPath = 'dart/my/lib/a.dart';
     newFile('$workspaceRootPath/bazel-bin/$relPath');
 
@@ -60,7 +60,7 @@
     expect(result, isA<NotPathOfUriResult>());
   }
 
-  void test_getResolvedLibrary2_notFileOfUri() async {
+  void test_getResolvedLibrary_notFileOfUri() async {
     var relPath = 'dart/my/lib/a.dart';
     newFile('$workspaceRootPath/bazel-bin/$relPath');
 
@@ -70,7 +70,7 @@
     expect(result, isA<NotPathOfUriResult>());
   }
 
-  void test_getResolvedUnit2_notFileOfUri() async {
+  void test_getResolvedUnit_notFileOfUri() async {
     var relPath = 'dart/my/lib/a.dart';
     newFile('$workspaceRootPath/bazel-bin/$relPath');
 
@@ -80,7 +80,7 @@
     expect(result, isA<NotPathOfUriResult>());
   }
 
-  void test_getResolvedUnit2_valid() async {
+  void test_getResolvedUnit_valid() async {
     var file = newFile(
       '$workspaceRootPath/dart/my/lib/a.dart',
       content: 'class A {}',
@@ -93,7 +93,7 @@
     expect(result.uri.toString(), 'package:dart.my/a.dart');
   }
 
-  void test_getUnitElement2_invalidPath_notAbsolute() async {
+  void test_getUnitElement_invalidPath_notAbsolute() async {
     var file = newFile(
       '$workspaceRootPath/dart/my/lib/a.dart',
       content: 'class A {}',
@@ -104,7 +104,7 @@
     expect(result, isA<InvalidPathResult>());
   }
 
-  void test_getUnitElement2_notPathOfUri() async {
+  void test_getUnitElement_notPathOfUri() async {
     var relPath = 'dart/my/lib/a.dart';
     newFile('$workspaceRootPath/bazel-bin/$relPath');
 
@@ -114,7 +114,7 @@
     expect(result, isA<NotPathOfUriResult>());
   }
 
-  void test_getUnitElement2_valid() async {
+  void test_getUnitElement_valid() async {
     var file = newFile(
       '$workspaceRootPath/dart/my/lib/a.dart',
       content: 'class A {}',
@@ -166,7 +166,7 @@
     testPath = convertPath('/home/test/lib/test.dart');
   }
 
-  test_getErrors2() async {
+  test_getErrors() async {
     newFile(testPath, content: 'class C {');
     var errorsResult = await session.getErrorsValid(testPath);
     expect(errorsResult.session, session);
@@ -174,17 +174,17 @@
     expect(errorsResult.errors, isNotEmpty);
   }
 
-  test_getErrors2_invalidPath_notAbsolute() async {
+  test_getErrors_invalidPath_notAbsolute() async {
     var errorsResult = await session.getErrors('not_absolute.dart');
     expect(errorsResult, isA<InvalidPathResult>());
   }
 
-  test_getFile2_invalidPath_notAbsolute() async {
+  test_getFile_invalidPath_notAbsolute() async {
     var errorsResult = session.getFile('not_absolute.dart');
     expect(errorsResult, isA<InvalidPathResult>());
   }
 
-  test_getFileSync2_library() async {
+  test_getFileSync_library() async {
     var path = convertPath('/home/test/lib/a.dart');
     newFile(path, content: '');
     var file = session.getFileValid(path);
@@ -193,7 +193,7 @@
     expect(file.isPart, isFalse);
   }
 
-  test_getFileSync2_part() async {
+  test_getFileSync_part() async {
     var path = convertPath('/home/test/lib/a.dart');
     newFile(path, content: 'part of lib;');
     var file = session.getFileValid(path);
@@ -202,7 +202,7 @@
     expect(file.isPart, isTrue);
   }
 
-  test_getLibraryByUri2() async {
+  test_getLibraryByUri() async {
     newFile(testPath, content: r'''
 class A {}
 class B {}
@@ -215,12 +215,12 @@
     expect(library.getType('C'), isNull);
   }
 
-  test_getLibraryByUri2_unresolvedUri() async {
+  test_getLibraryByUri_unresolvedUri() async {
     var result = await session.getLibraryByUri('package:foo/foo.dart');
     expect(result, isA<CannotResolveUriResult>());
   }
 
-  test_getParsedLibrary2() async {
+  test_getParsedLibrary() async {
     newFile(testPath, content: r'''
 class A {}
 class B {}
@@ -241,74 +241,6 @@
     }
   }
 
-  test_getParsedLibrary2_invalidPath_notAbsolute() async {
-    var result = session.getParsedLibrary('not_absolute.dart');
-    expect(result, isA<InvalidPathResult>());
-  }
-
-  test_getParsedLibrary2_notLibrary() async {
-    newFile(testPath, content: 'part of "a.dart";');
-    expect(session.getParsedLibrary(testPath), isA<NotLibraryButPartResult>());
-  }
-
-  test_getParsedLibrary2_parts() async {
-    var a = convertPath('/home/test/lib/a.dart');
-    var b = convertPath('/home/test/lib/b.dart');
-    var c = convertPath('/home/test/lib/c.dart');
-
-    var aContent = r'''
-part 'b.dart';
-part 'c.dart';
-
-class A {}
-''';
-
-    var bContent = r'''
-part of 'a.dart';
-
-class B1 {}
-class B2 {}
-''';
-
-    var cContent = r'''
-part of 'a.dart';
-
-class C1 {}
-class C2 {}
-class C3 {}
-''';
-
-    newFile(a, content: aContent);
-    newFile(b, content: bContent);
-    newFile(c, content: cContent);
-
-    var parsedLibrary = session.getParsedLibraryValid(a);
-    expect(parsedLibrary.path, a);
-    expect(parsedLibrary.uri, Uri.parse('package:test/a.dart'));
-    expect(parsedLibrary.units, hasLength(3));
-
-    {
-      var aUnit = parsedLibrary.units[0];
-      expect(aUnit.path, a);
-      expect(aUnit.uri, Uri.parse('package:test/a.dart'));
-      expect(aUnit.unit.declarations, hasLength(1));
-    }
-
-    {
-      var bUnit = parsedLibrary.units[1];
-      expect(bUnit.path, b);
-      expect(bUnit.uri, Uri.parse('package:test/b.dart'));
-      expect(bUnit.unit.declarations, hasLength(2));
-    }
-
-    {
-      var cUnit = parsedLibrary.units[2];
-      expect(cUnit.path, c);
-      expect(cUnit.uri, Uri.parse('package:test/c.dart'));
-      expect(cUnit.unit.declarations, hasLength(3));
-    }
-  }
-
   test_getParsedLibrary_getElementDeclaration_class() async {
     newFile(testPath, content: r'''
 class A {}
@@ -328,7 +260,7 @@
     expect(node.length, 10);
   }
 
-  test_getParsedLibrary_getElementDeclaration_notThisLibrary2() async {
+  test_getParsedLibrary_getElementDeclaration_notThisLibrary() async {
     newFile(testPath, content: '');
 
     var resolvedUnit =
@@ -391,7 +323,75 @@
     );
   }
 
-  test_getParsedLibraryByElement2() async {
+  test_getParsedLibrary_invalidPath_notAbsolute() async {
+    var result = session.getParsedLibrary('not_absolute.dart');
+    expect(result, isA<InvalidPathResult>());
+  }
+
+  test_getParsedLibrary_notLibrary() async {
+    newFile(testPath, content: 'part of "a.dart";');
+    expect(session.getParsedLibrary(testPath), isA<NotLibraryButPartResult>());
+  }
+
+  test_getParsedLibrary_parts() async {
+    var a = convertPath('/home/test/lib/a.dart');
+    var b = convertPath('/home/test/lib/b.dart');
+    var c = convertPath('/home/test/lib/c.dart');
+
+    var aContent = r'''
+part 'b.dart';
+part 'c.dart';
+
+class A {}
+''';
+
+    var bContent = r'''
+part of 'a.dart';
+
+class B1 {}
+class B2 {}
+''';
+
+    var cContent = r'''
+part of 'a.dart';
+
+class C1 {}
+class C2 {}
+class C3 {}
+''';
+
+    newFile(a, content: aContent);
+    newFile(b, content: bContent);
+    newFile(c, content: cContent);
+
+    var parsedLibrary = session.getParsedLibraryValid(a);
+    expect(parsedLibrary.path, a);
+    expect(parsedLibrary.uri, Uri.parse('package:test/a.dart'));
+    expect(parsedLibrary.units, hasLength(3));
+
+    {
+      var aUnit = parsedLibrary.units[0];
+      expect(aUnit.path, a);
+      expect(aUnit.uri, Uri.parse('package:test/a.dart'));
+      expect(aUnit.unit.declarations, hasLength(1));
+    }
+
+    {
+      var bUnit = parsedLibrary.units[1];
+      expect(bUnit.path, b);
+      expect(bUnit.uri, Uri.parse('package:test/b.dart'));
+      expect(bUnit.unit.declarations, hasLength(2));
+    }
+
+    {
+      var cUnit = parsedLibrary.units[2];
+      expect(cUnit.path, c);
+      expect(cUnit.uri, Uri.parse('package:test/c.dart'));
+      expect(cUnit.unit.declarations, hasLength(3));
+    }
+  }
+
+  test_getParsedLibraryByElement() async {
     newFile(testPath, content: '');
 
     var libraryResult = await session.getLibraryByUriValid(
@@ -406,7 +406,7 @@
     expect(parsedLibrary.units, hasLength(1));
   }
 
-  test_getParsedLibraryByElement2_differentSession() async {
+  test_getParsedLibraryByElement_differentSession() async {
     newFile(testPath, content: '');
 
     var libraryResult = await session.getLibraryByUriValid(
@@ -421,7 +421,7 @@
     expect(result, isA<NotElementOfThisSessionResult>());
   }
 
-  test_getParsedUnit2() async {
+  test_getParsedUnit() async {
     newFile(testPath, content: r'''
 class A {}
 class B {}
@@ -434,7 +434,7 @@
     expect(unitResult.unit.declarations, hasLength(2));
   }
 
-  test_getParsedUnit2_invalidPath_notAbsolute() async {
+  test_getParsedUnit_invalidPath_notAbsolute() async {
     var result = session.getParsedUnit('not_absolute.dart');
     expect(result, isA<InvalidPathResult>());
   }
@@ -505,18 +505,6 @@
     expect(bNode.declaredElement!.name, 'B');
   }
 
-  test_getResolvedLibrary2_invalidPath_notAbsolute() async {
-    var result = await session.getResolvedLibrary('not_absolute.dart');
-    expect(result, isA<InvalidPathResult>());
-  }
-
-  test_getResolvedLibrary2_notLibrary() async {
-    newFile(testPath, content: 'part of "a.dart";');
-
-    var result = await session.getResolvedLibrary(testPath);
-    expect(result, isA<NotLibraryButPartResult>());
-  }
-
   test_getResolvedLibrary_getElementDeclaration_notThisLibrary() async {
     newFile(testPath, content: '');
 
@@ -576,7 +564,19 @@
     );
   }
 
-  test_getResolvedLibraryByElement2() async {
+  test_getResolvedLibrary_invalidPath_notAbsolute() async {
+    var result = await session.getResolvedLibrary('not_absolute.dart');
+    expect(result, isA<InvalidPathResult>());
+  }
+
+  test_getResolvedLibrary_notLibrary() async {
+    newFile(testPath, content: 'part of "a.dart";');
+
+    var result = await session.getResolvedLibrary(testPath);
+    expect(result, isA<NotLibraryButPartResult>());
+  }
+
+  test_getResolvedLibraryByElement() async {
     newFile(testPath, content: '');
 
     var libraryResult = await session.getLibraryByUriValid(
@@ -592,7 +592,7 @@
     expect(result.units[0].unit.declaredElement, isNotNull);
   }
 
-  test_getResolvedLibraryByElement2_differentSession() async {
+  test_getResolvedLibraryByElement_differentSession() async {
     newFile(testPath, content: '');
 
     var libraryResult = await session.getLibraryByUriValid(
@@ -607,7 +607,7 @@
     expect(result, isA<NotElementOfThisSessionResult>());
   }
 
-  test_getResolvedUnit2() async {
+  test_getResolvedUnit() async {
     newFile(testPath, content: r'''
 class A {}
 class B {}
@@ -623,7 +623,7 @@
     expect(unitResult.libraryElement, isNotNull);
   }
 
-  test_getUnitElement2() async {
+  test_getUnitElement() async {
     newFile(testPath, content: r'''
 class A {}
 class B {}
diff --git a/pkg/analyzer/test/src/diagnostics/const_map_key_expression_type_implements_equals_test.dart b/pkg/analyzer/test/src/diagnostics/const_map_key_expression_type_implements_equals_test.dart
index 6b2a23b..c592ea3 100644
--- a/pkg/analyzer/test/src/diagnostics/const_map_key_expression_type_implements_equals_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/const_map_key_expression_type_implements_equals_test.dart
@@ -32,7 +32,7 @@
   test_constField() async {
     await assertErrorsInCode(r'''
 main() {
-  const {double.INFINITY: 0};
+  const {double.infinity: 0};
 }
 ''', [
       error(
diff --git a/pkg/analyzer/test/util/id_testing_helper.dart b/pkg/analyzer/test/util/id_testing_helper.dart
index 2024150..7fe6cbe 100644
--- a/pkg/analyzer/test/util/id_testing_helper.dart
+++ b/pkg/analyzer/test/util/id_testing_helper.dart
@@ -171,7 +171,7 @@
   var results = <Uri, ResolvedUnitResult>{};
   for (var testUri in testUris) {
     var path = resourceProvider.convertPath(testUri.path);
-    var result = await driver.getResult2(path) as ResolvedUnitResult;
+    var result = await driver.getResult(path) as ResolvedUnitResult;
     var errors =
         result.errors.where((e) => e.severity == Severity.error).toList();
     if (errors.isNotEmpty) {
diff --git a/pkg/analyzer_cli/lib/src/analyzer_impl.dart b/pkg/analyzer_cli/lib/src/analyzer_impl.dart
index 1b1e423..4b3846b 100644
--- a/pkg/analyzer_cli/lib/src/analyzer_impl.dart
+++ b/pkg/analyzer_cli/lib/src/analyzer_impl.dart
@@ -113,7 +113,7 @@
   /// Fills [errorsResults] using [files].
   Future<void> prepareErrors() async {
     for (var path in files) {
-      var errorsResult = await analysisDriver.getErrors2(path);
+      var errorsResult = await analysisDriver.getErrors(path);
       if (errorsResult is ErrorsResult) {
         errorsResults.add(errorsResult);
       }
@@ -209,7 +209,7 @@
     var libraryPath = libraryFile.path;
     analysisDriver.priorityFiles = [libraryPath];
     var elementResult =
-        await analysisDriver.getUnitElement2(libraryPath) as UnitElementResult;
+        await analysisDriver.getUnitElement(libraryPath) as UnitElementResult;
     return elementResult.element.library;
   }
 
diff --git a/pkg/analyzer_cli/lib/src/error_formatter.dart b/pkg/analyzer_cli/lib/src/error_formatter.dart
index 16a2732..f496762 100644
--- a/pkg/analyzer_cli/lib/src/error_formatter.dart
+++ b/pkg/analyzer_cli/lib/src/error_formatter.dart
@@ -312,7 +312,7 @@
     for (var message in error.contextMessages) {
       var session = result.session.analysisContext;
       if (session is DriverBasedAnalysisContext) {
-        var fileResult = session.driver.getFileSync2(message.filePath);
+        var fileResult = session.driver.getFileSync(message.filePath);
         if (fileResult is FileResult) {
           var lineInfo = fileResult?.lineInfo;
           var location = lineInfo.getLocation(message.offset);
diff --git a/pkg/analyzer_plugin/lib/plugin/plugin.dart b/pkg/analyzer_plugin/lib/plugin/plugin.dart
index 14ede54..f56f362 100644
--- a/pkg/analyzer_plugin/lib/plugin/plugin.dart
+++ b/pkg/analyzer_plugin/lib/plugin/plugin.dart
@@ -161,7 +161,7 @@
       throw RequestFailure(
           RequestErrorFactory.pluginError('Failed to analyze $path', null));
     }
-    var result = await driver.getResult2(path);
+    var result = await driver.getResult(path);
     if (result is! ResolvedUnitResult) {
       // Return an error from the request.
       throw RequestFailure(
diff --git a/pkg/nnbd_migration/test/edge_builder_test.dart b/pkg/nnbd_migration/test/edge_builder_test.dart
index 133f7d5..fcec048 100644
--- a/pkg/nnbd_migration/test/edge_builder_test.dart
+++ b/pkg/nnbd_migration/test/edge_builder_test.dart
@@ -590,9 +590,9 @@
 
   Future<void> test_already_migrated_field() async {
     await analyze('''
-double f() => double.NAN;
+double f() => double.nan;
 ''');
-    var nanElement = typeProvider.doubleType.element.getField('NAN')!;
+    var nanElement = typeProvider.doubleType.element.getField('nan')!;
     assertEdge(variables!.decoratedElementType(nanElement).node,
         decoratedTypeAnnotation('double f').node,
         hard: false);
diff --git a/tools/VERSION b/tools/VERSION
index 0b145e6..bb8c8f5 100644
--- a/tools/VERSION
+++ b/tools/VERSION
@@ -27,5 +27,5 @@
 MAJOR 2
 MINOR 15
 PATCH 0
-PRERELEASE 247
+PRERELEASE 248
 PRERELEASE_PATCH 0
\ No newline at end of file