Index: pkg/compiler/lib/src/ssa/types.dart |
diff --git a/pkg/compiler/lib/src/ssa/types.dart b/pkg/compiler/lib/src/ssa/types.dart |
index 18ed76ca5aa1d01aec330ba9fc03f05fd0ab6aa5..601fcb2fa76b79e7983fce00a997b87761b8ce87 100644 |
--- a/pkg/compiler/lib/src/ssa/types.dart |
+++ b/pkg/compiler/lib/src/ssa/types.dart |
@@ -15,45 +15,45 @@ class TypeMaskFactory { |
static TypeMask inferredReturnTypeForElement( |
Element element, Compiler compiler) { |
return compiler.globalInference.results.returnTypeOf(element) ?? |
- compiler.commonMasks.dynamicType; |
+ compiler.closedWorld.commonMasks.dynamicType; |
} |
static TypeMask inferredTypeForElement(Element element, Compiler compiler) { |
return compiler.globalInference.results.typeOf(element) ?? |
- compiler.commonMasks.dynamicType; |
+ compiler.closedWorld.commonMasks.dynamicType; |
} |
static TypeMask inferredTypeForSelector( |
Selector selector, TypeMask mask, Compiler compiler) { |
return compiler.globalInference.results.typeOfSelector(selector, mask) ?? |
- compiler.commonMasks.dynamicType; |
+ compiler.closedWorld.commonMasks.dynamicType; |
} |
static TypeMask fromNativeBehavior( |
native.NativeBehavior nativeBehavior, Compiler compiler) { |
+ ClosedWorld closedWorld = compiler.closedWorld; |
+ CommonMasks commonMasks = closedWorld.commonMasks; |
var typesReturned = nativeBehavior.typesReturned; |
- if (typesReturned.isEmpty) return compiler.commonMasks.dynamicType; |
+ if (typesReturned.isEmpty) return commonMasks.dynamicType; |
- ClosedWorld world = compiler.closedWorld; |
- CommonMasks commonMasks = compiler.commonMasks; |
- CoreClasses coreClasses = compiler.coreClasses; |
+ CoreClasses coreClasses = closedWorld.coreClasses; |
// [type] is either an instance of [DartType] or special objects |
// like [native.SpecialType.JsObject]. |
TypeMask fromNativeType(dynamic type) { |
if (type == native.SpecialType.JsObject) { |
- return new TypeMask.nonNullExact(coreClasses.objectClass, world); |
+ return new TypeMask.nonNullExact(coreClasses.objectClass, closedWorld); |
} |
if (type.isVoid) return commonMasks.nullType; |
if (type.element == coreClasses.nullClass) return commonMasks.nullType; |
if (type.treatAsDynamic) return commonMasks.dynamicType; |
- return new TypeMask.nonNullSubtype(type.element, world); |
+ return new TypeMask.nonNullSubtype(type.element, closedWorld); |
} |
TypeMask result = typesReturned |
.map(fromNativeType) |
- .reduce((t1, t2) => t1.union(t2, compiler.closedWorld)); |
+ .reduce((t1, t2) => t1.union(t2, closedWorld)); |
assert(!result.isEmpty); |
return result; |
} |