Version 2.14.0-285.0.dev
Merge commit '12bf10ce397d8d31364b2ab29655d21931716a3b' into 'dev'
diff --git a/pkg/analyzer/lib/src/summary2/library_builder.dart b/pkg/analyzer/lib/src/summary2/library_builder.dart
index a36ee5c..2c1a0b3 100644
--- a/pkg/analyzer/lib/src/summary2/library_builder.dart
+++ b/pkg/analyzer/lib/src/summary2/library_builder.dart
@@ -8,7 +8,6 @@
import 'package:analyzer/src/dart/ast/ast.dart' as ast;
import 'package:analyzer/src/dart/ast/mixin_super_invoked_names.dart';
import 'package:analyzer/src/dart/element/element.dart';
-import 'package:analyzer/src/dart/element/scope.dart';
import 'package:analyzer/src/dart/resolver/scope.dart';
import 'package:analyzer/src/summary2/combinator.dart';
import 'package:analyzer/src/summary2/constructor_initializer_resolver.dart';
@@ -29,8 +28,6 @@
final LibraryElementImpl element;
final List<LinkingUnit> units;
- late final LibraryScope scope;
-
/// Local declarations.
final Scope localScope = Scope.top();
@@ -130,10 +127,6 @@
});
}
- void buildScope() {
- scope = element.scope as LibraryScope;
- }
-
void collectMixinSuperInvokedNames() {
for (var linkingUnit in units) {
for (var declaration in linkingUnit.node.declarations) {
@@ -162,7 +155,7 @@
void resolveMetadata() {
for (var linkingUnit in units) {
- var resolver = MetadataResolver(linker, scope, linkingUnit.element);
+ var resolver = MetadataResolver(linker, element, linkingUnit.element);
linkingUnit.node.accept(resolver);
}
}
@@ -176,7 +169,6 @@
element,
linkingUnit.reference,
linkingUnit.node.featureSet.isEnabled(Feature.non_nullable),
- scope,
);
linkingUnit.node.accept(resolver);
}
@@ -184,6 +176,7 @@
void storeExportScope() {
exports = exportScope.map.values.toList();
+ linker.elementFactory.setExportsOfLibrary('$uri', exports);
var definedNames = <String, Element>{};
for (var entry in exportScope.map.entries) {
@@ -200,8 +193,6 @@
if (entryPoint is FunctionElement) {
element.entryPoint = entryPoint;
}
-
- linker.elementFactory.setExportsOfLibrary('$uri', exports);
}
static void build(Linker linker, LinkInputLibrary inputLibrary) {
diff --git a/pkg/analyzer/lib/src/summary2/link.dart b/pkg/analyzer/lib/src/summary2/link.dart
index 4cc4a03..f0b0174 100644
--- a/pkg/analyzer/lib/src/summary2/link.dart
+++ b/pkg/analyzer/lib/src/summary2/link.dart
@@ -160,10 +160,6 @@
for (var library in builders.values) {
library.storeExportScope();
}
-
- for (var library in builders.values) {
- library.buildScope();
- }
}
void _createTypeSystem() {
diff --git a/pkg/analyzer/lib/src/summary2/metadata_resolver.dart b/pkg/analyzer/lib/src/summary2/metadata_resolver.dart
index 4b4a1ad..3bf8d56 100644
--- a/pkg/analyzer/lib/src/summary2/metadata_resolver.dart
+++ b/pkg/analyzer/lib/src/summary2/metadata_resolver.dart
@@ -17,8 +17,12 @@
final CompilationUnitElementImpl _unitElement;
Scope _scope;
- MetadataResolver(this._linker, this._libraryScope, this._unitElement)
- : _scope = _libraryScope;
+ MetadataResolver(
+ this._linker,
+ LibraryElementImpl libraryElement,
+ this._unitElement,
+ ) : _libraryScope = libraryElement.scope,
+ _scope = libraryElement.scope;
@override
void visitAnnotation(covariant AnnotationImpl node) {
diff --git a/pkg/analyzer/lib/src/summary2/reference_resolver.dart b/pkg/analyzer/lib/src/summary2/reference_resolver.dart
index 9169ffb..ea3f216 100644
--- a/pkg/analyzer/lib/src/summary2/reference_resolver.dart
+++ b/pkg/analyzer/lib/src/summary2/reference_resolver.dart
@@ -48,8 +48,8 @@
LibraryElementImpl libraryElement,
this.unitReference,
this.isNNBD,
- this.scope,
- ) : _typeSystem = libraryElement.typeSystem;
+ ) : _typeSystem = libraryElement.typeSystem,
+ scope = libraryElement.scope;
@override
void visitBlockFunctionBody(BlockFunctionBody node) {}
diff --git a/pkg/analyzer/lib/src/summary2/top_level_inference.dart b/pkg/analyzer/lib/src/summary2/top_level_inference.dart
index a9072ab..7c85b60d 100644
--- a/pkg/analyzer/lib/src/summary2/top_level_inference.dart
+++ b/pkg/analyzer/lib/src/summary2/top_level_inference.dart
@@ -46,7 +46,7 @@
unit.extensions.forEach(_resolveExtensionFields);
unit.mixins.forEach(_resolveClassFields);
- _scope = builder.scope;
+ _scope = builder.element.scope;
unit.topLevelVariables.forEach(_resolveVariable);
}
}
@@ -338,7 +338,7 @@
unit.extensions.forEach(_addExtensionElementFields);
unit.mixins.forEach(_addClassElementFields);
- _scope = builder.scope;
+ _scope = builder.element.scope;
for (var element in unit.topLevelVariables) {
_addVariableNode(element);
}
diff --git a/tools/VERSION b/tools/VERSION
index c5429f5..51acfad 100644
--- a/tools/VERSION
+++ b/tools/VERSION
@@ -27,5 +27,5 @@
MAJOR 2
MINOR 14
PATCH 0
-PRERELEASE 284
+PRERELEASE 285
PRERELEASE_PATCH 0
\ No newline at end of file