| Index: lib/compiler/implementation/ssa/builder.dart
|
| diff --git a/lib/compiler/implementation/ssa/builder.dart b/lib/compiler/implementation/ssa/builder.dart
|
| index 8c6ca6badb54cc3e253a0b5e177c147af88e1d42..68d6d505819092e2fb2af2fb1b1b75ff63312b2b 100644
|
| --- a/lib/compiler/implementation/ssa/builder.dart
|
| +++ b/lib/compiler/implementation/ssa/builder.dart
|
| @@ -2352,12 +2352,11 @@ class SsaBuilder extends ResolvedVisitor implements Visitor {
|
| stack.add(graph.addConstantNull());
|
| return;
|
| }
|
| - compiler.ensure(element.kind !== ElementKind.GENERATIVE_CONSTRUCTOR);
|
| - HInstruction target = new HStatic(element);
|
| - add(target);
|
| - var inputs = <HInstruction>[];
|
| - inputs.add(target);
|
| - if (element.kind == ElementKind.FUNCTION) {
|
| + compiler.ensure(!element.isGenerativeConstructor());
|
| + if (element.isFunction()) {
|
| + HInstruction target = new HStatic(element);
|
| + add(target);
|
| + var inputs = <HInstruction>[target];
|
| bool succeeded = addStaticSendArgumentsToList(selector, node.arguments,
|
| element, inputs);
|
| if (!succeeded) {
|
| @@ -2367,11 +2366,8 @@ class SsaBuilder extends ResolvedVisitor implements Visitor {
|
| }
|
| pushWithPosition(new HInvokeStatic(inputs), node);
|
| } else {
|
| - if (element.kind == ElementKind.GETTER) {
|
| - target = new HInvokeStatic(inputs);
|
| - add(target);
|
| - inputs = <HInstruction>[target];
|
| - }
|
| + generateGetter(node, element);
|
| + List<HInstruction> inputs = <HInstruction>[pop()];
|
| addDynamicSendArgumentsToList(node, inputs);
|
| pushWithPosition(new HInvokeClosure(selector, inputs), node);
|
| }
|
|
|