Index: pkg/compiler/lib/src/ssa/builder_kernel.dart |
diff --git a/pkg/compiler/lib/src/ssa/builder_kernel.dart b/pkg/compiler/lib/src/ssa/builder_kernel.dart |
index ed34fdb587504032cd2316ee2944579e8a1a6255..383276378fa7dccd62be7239094d34665964a70a 100644 |
--- a/pkg/compiler/lib/src/ssa/builder_kernel.dart |
+++ b/pkg/compiler/lib/src/ssa/builder_kernel.dart |
@@ -117,7 +117,7 @@ class KernelSsaGraphBuilder extends ir.Visitor |
this.sourceInformationBuilder, |
this.functionNode) { |
this.loopHandler = new KernelLoopHandler(this); |
- typeBuilder = new TypeBuilder(this); |
+ typeBuilder = new KernelTypeBuilder(_elementMap, this); |
graph.element = targetElement; |
graph.sourceInformation = |
sourceInformationBuilder.buildVariableDeclaration(); |
@@ -3502,3 +3502,14 @@ class TryCatchFinallyBuilder { |
kernelBuilder.inTryStatement = previouslyInTryStatement; |
} |
} |
+ |
+class KernelTypeBuilder extends TypeBuilder { |
+ KernelToElementMapForBuilding _elementMap; |
+ |
+ KernelTypeBuilder(this._elementMap, GraphBuilder builder) : super(builder); |
+ |
+ @override |
+ InterfaceType getThisType(ClassEntity cls) { |
+ return _elementMap.elementEnvironment.getThisType(cls); |
+ } |
+} |