| Index: pkg/compiler/lib/src/tree_ir/tree_ir_builder.dart
|
| diff --git a/pkg/compiler/lib/src/tree_ir/tree_ir_builder.dart b/pkg/compiler/lib/src/tree_ir/tree_ir_builder.dart
|
| index 9efa6020b2cd60dee2648d33178477ad6ff4b2a1..c36a394fa77728ca74c897c41f76bff613d5c370 100644
|
| --- a/pkg/compiler/lib/src/tree_ir/tree_ir_builder.dart
|
| +++ b/pkg/compiler/lib/src/tree_ir/tree_ir_builder.dart
|
| @@ -581,6 +581,14 @@ class Builder implements cps_ir.Visitor/*<NodeCallback|Node>*/ {
|
| }
|
|
|
| Expression visitInvokeMethod(cps_ir.InvokeMethod node) {
|
| + if (node.callingConvention == cps_ir.CallingConvention.OneShotIntercepted) {
|
| + List<Expression> arguments = new List.generate(
|
| + 1 + node.arguments.length,
|
| + (n) => getVariableUse(n == 0 ? node.receiver : node.arguments[n - 1]),
|
| + growable: false);
|
| + return new OneShotInterceptor(node.selector, node.mask, arguments,
|
| + node.sourceInformation);
|
| + }
|
| InvokeMethod invoke = new InvokeMethod(
|
| getVariableUse(node.receiver),
|
| node.selector,
|
|
|