Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(68)

Unified Diff: pkg/compiler/lib/src/inferrer/builder.dart

Issue 2804293002: Add MemberEntity.isAbstract and use MemberEntity in function_set.dart (Closed)
Patch Set: Inference doesn't like MemberEntity Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « pkg/compiler/lib/src/elements/entities.dart ('k') | pkg/compiler/lib/src/inferrer/closure_tracer.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/compiler/lib/src/inferrer/builder.dart
diff --git a/pkg/compiler/lib/src/inferrer/builder.dart b/pkg/compiler/lib/src/inferrer/builder.dart
index afbd8be42b4372525414a34d81f3ca1ae4cb6822..1eb74169fbcf96f2ea7a68ef43d0d0134e337739 100644
--- a/pkg/compiler/lib/src/inferrer/builder.dart
+++ b/pkg/compiler/lib/src/inferrer/builder.dart
@@ -994,7 +994,7 @@ class ElementGraphBuilder extends ast.Visitor<TypeInformation>
if (!isConstructorRedirect &&
!seenSuperConstructorCall &&
!cls.isObject) {
- FunctionElement target = cls.superclass.lookupDefaultConstructor();
+ ConstructorElement target = cls.superclass.lookupDefaultConstructor();
ArgumentsTypes arguments = new ArgumentsTypes([], {});
analyzeSuperConstructorCall(target, arguments);
inferrer.registerCalledElement(node, null, null, outermostElement,
@@ -1985,13 +1985,13 @@ class ElementGraphBuilder extends ast.Visitor<TypeInformation>
(node.asSendSet() != null) &&
(node.asSendSet().receiver != null) &&
node.asSendSet().receiver.isThis()) {
- Iterable<Element> targets = closedWorld.allFunctions.filter(
+ Iterable<MemberEntity> targets = closedWorld.allFunctions.filter(
setterSelector, types.newTypedSelector(thisType, setterMask));
// We just recognized a field initialization of the form:
// `this.foo = 42`. If there is only one target, we can update
// its type.
if (targets.length == 1) {
- Element single = targets.first;
+ MemberElement single = targets.first;
if (single.isField) {
locals.updateField(single, rhsType);
}
@@ -2816,7 +2816,7 @@ class ElementGraphBuilder extends ast.Visitor<TypeInformation>
}
TypeInformation synthesizeForwardingCall(
- Spannable node, FunctionElement element) {
+ Spannable node, ConstructorElement element) {
element = element.implementation;
FunctionElement function = analyzedElement;
FunctionSignature signature = function.functionSignature;
@@ -2849,7 +2849,7 @@ class ElementGraphBuilder extends ast.Visitor<TypeInformation>
}
TypeInformation visitRedirectingFactoryBody(ast.RedirectingFactoryBody node) {
- Element element = elements.getRedirectingTargetConstructor(node);
+ ConstructorElement element = elements.getRedirectingTargetConstructor(node);
if (Elements.isMalformed(element)) {
recordReturnType(types.dynamicType);
} else {
« no previous file with comments | « pkg/compiler/lib/src/elements/entities.dart ('k') | pkg/compiler/lib/src/inferrer/closure_tracer.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698