| Index: sdk/lib/_internal/compiler/implementation/ssa/builder.dart
|
| diff --git a/sdk/lib/_internal/compiler/implementation/ssa/builder.dart b/sdk/lib/_internal/compiler/implementation/ssa/builder.dart
|
| index 6613a53fab67c850cdc35efea2ca7d846987431e..48c3e1686cbc30a3cfb24a73e7c7ba96f5783012 100644
|
| --- a/sdk/lib/_internal/compiler/implementation/ssa/builder.dart
|
| +++ b/sdk/lib/_internal/compiler/implementation/ssa/builder.dart
|
| @@ -3394,18 +3394,7 @@ class SsaBuilder extends ResolvedVisitor implements Visitor {
|
| bool isRedirected = functionElement.isRedirectingFactory;
|
| DartType expectedType = type;
|
| if (isRedirected) {
|
| - FunctionExpression functionNode = functionElement.parseNode(compiler);
|
| - if (functionNode.isRedirectingFactory) {
|
| - // Lookup the type used in the redirection.
|
| - Return redirectionNode = functionNode.body;
|
| - TreeElements treeElements =
|
| - compiler.enqueuer.resolution.getCachedElements(
|
| - functionElement.declaration);
|
| - ClassElement targetClass = functionElement.getEnclosingClass();
|
| - type = treeElements.getType(redirectionNode.expression)
|
| - .subst(type.typeArguments, targetClass.typeVariables);
|
| - }
|
| - functionElement = functionElement.redirectionTarget;
|
| + type = functionElement.computeTargetType(compiler, type);
|
| }
|
|
|
| var inputs = <HInstruction>[];
|
| @@ -3660,7 +3649,6 @@ class SsaBuilder extends ResolvedVisitor implements Visitor {
|
| generateRuntimeError(node.send, message.toString());
|
| }
|
| } else if (node.isConst()) {
|
| - // TODO(karlklose): add type representation
|
| ConstantHandler handler = compiler.constantHandler;
|
| Constant constant = handler.compileNodeWithDefinitions(node, elements);
|
| stack.add(graph.addConstant(constant, compiler));
|
|
|