| 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 8017ba65f47139a2866f32c6084ffe7b5592055c..be7db0c1687efbdbba56524c27549969fc460504 100644
|
| --- a/pkg/compiler/lib/src/tree_ir/tree_ir_builder.dart
|
| +++ b/pkg/compiler/lib/src/tree_ir/tree_ir_builder.dart
|
| @@ -510,8 +510,13 @@ class Builder implements cps_ir.Visitor<Node> {
|
|
|
| Statement visitInvokeConstructor(cps_ir.InvokeConstructor node) {
|
| List<Expression> arguments = translateArguments(node.arguments);
|
| - Expression invoke =
|
| - new InvokeConstructor(node.type, node.target, node.selector, arguments);
|
| + List<Expression> typeArguments = translateArguments(node.typeArguments);
|
| + Expression invoke = new InvokeConstructor(
|
| + node.type,
|
| + node.target,
|
| + node.selector,
|
| + arguments,
|
| + typeArguments);
|
| return continueWithExpression(node.continuation, invoke);
|
| }
|
|
|
| @@ -646,4 +651,11 @@ class Builder implements cps_ir.Visitor<Node> {
|
| Expression visitReadTypeVariable(cps_ir.ReadTypeVariable node) {
|
| return new ReadTypeVariable(node.variable, getVariableUse(node.target));
|
| }
|
| +
|
| + @override
|
| + Node visitTypeExpression(cps_ir.TypeExpression node) {
|
| + return new TypeExpression(
|
| + node.dartType,
|
| + node.arguments.map(getVariableUse).toList());
|
| + }
|
| }
|
|
|