Remove parsed units caching for now.
I see that we leak them when using DAS.
So, lets remove them for now until we can do this safely.
R=brianwilkerson@google.com, paulberry@google.com
Change-Id: Iaf349225c6e338eacb40e82deb5f84dfaa82e48d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105326
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
diff --git a/pkg/analyzer/lib/src/dart/analysis/file_state.dart b/pkg/analyzer/lib/src/dart/analysis/file_state.dart
index f26ea36..252c1e4 100644
--- a/pkg/analyzer/lib/src/dart/analysis/file_state.dart
+++ b/pkg/analyzer/lib/src/dart/analysis/file_state.dart
@@ -121,7 +121,6 @@
List<int> _apiSignature;
UnlinkedUnit2 _unlinked2;
- CompilationUnit _unitForLinking;
List<FileState> _importedFiles;
List<FileState> _exportedFiles;
@@ -535,18 +534,6 @@
return apiSignatureChanged;
}
- /// If the file has a parsed unit from computing unlinked data, return it.
- /// Otherwise, parse it afresh now.
- CompilationUnit takeUnitForLinking() {
- if (_unitForLinking != null) {
- var result = _unitForLinking;
- _unitForLinking = null;
- return result;
- } else {
- return parse();
- }
- }
-
@override
String toString() => path ?? '<unresolved>';
@@ -658,7 +645,6 @@
bytes = _fsState._byteStore.get(_unlinkedKey);
if (bytes == null || bytes.isEmpty) {
CompilationUnit unit = parse();
- _unitForLinking = unit;
_fsState._logger.run('Create unlinked for $path', () {
var unlinkedUnit = serializeAstUnlinked2(unit);
var definedNames = computeDefinedNames(unit);
diff --git a/pkg/analyzer/lib/src/dart/analysis/library_context.dart b/pkg/analyzer/lib/src/dart/analysis/library_context.dart
index a29ea93..b8132e2 100644
--- a/pkg/analyzer/lib/src/dart/analysis/library_context.dart
+++ b/pkg/analyzer/lib/src/dart/analysis/library_context.dart
@@ -283,7 +283,7 @@
var inputUnits = <link2.LinkInputUnit>[];
for (var file in libraryFile.libraryFiles) {
var isSynthetic = !file.exists;
- var unit = file.takeUnitForLinking();
+ var unit = file.parse();
inputUnits.add(
link2.LinkInputUnit(file.source, isSynthetic, unit),
);