Index: pkg/compiler/lib/src/cps_ir/type_mask_system.dart |
diff --git a/pkg/compiler/lib/src/cps_ir/type_mask_system.dart b/pkg/compiler/lib/src/cps_ir/type_mask_system.dart |
index ba44ed1c26068069ff6a6f6fa747d90ff988e5c5..ec9cb433f99172f694275a48340d690c9cbfc5c7 100644 |
--- a/pkg/compiler/lib/src/cps_ir/type_mask_system.dart |
+++ b/pkg/compiler/lib/src/cps_ir/type_mask_system.dart |
@@ -133,6 +133,12 @@ class TypeMaskSystem { |
return a.union(b, classWorld); |
} |
+ TypeMask intersection(TypeMask a, TypeMask b) { |
+ if (a == null) return b; |
+ if (b == null) return a; |
+ return a.intersection(b, classWorld); |
+ } |
+ |
TypeMask getTypeOf(ConstantValue constant) { |
return computeTypeMask(inferrer.compiler, constant); |
} |