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

Unified Diff: lib/compiler/implementation/resolver.dart

Issue 10834270: Implement call operator. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 years, 4 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
Index: lib/compiler/implementation/resolver.dart
diff --git a/lib/compiler/implementation/resolver.dart b/lib/compiler/implementation/resolver.dart
index 246a546edf7ae8b40d13e80b57ae7a63b3775156..c457e7ca4e4d872a54297bb10f77e2446082279b 100644
--- a/lib/compiler/implementation/resolver.dart
+++ b/lib/compiler/implementation/resolver.dart
@@ -1193,6 +1193,13 @@ class ResolverVisitor extends CommonResolverVisitor<Element> {
AbstractFieldElement field = target;
target = field.getter;
}
+ if (node.isCall &&
+ (target == null ||
ahe 2012/08/10 09:11:35 === for consistency with the rest of the file.
floitsch 2012/08/10 12:19:16 Done.
+ target.isGetter() ||
ahe 2012/08/10 09:11:35 I think you also need: target.isInstanceMember()
ahe 2012/08/10 09:15:49 Never mind.
+ Elements.isClosureSend(node, target))) {
+ world.registerDynamicInvocation(compiler.namer.CLOSURE_INVOCATION_NAME,
+ mapping.getSelector(node));
+ }
// TODO(ngeoffray): We should do the check in
// visitExpressionStatement instead.
if (target === compiler.assertMethod && !node.isCall) {

Powered by Google App Engine
This is Rietveld 408576698