| Index: pkg/compiler/lib/src/types/type_mask.dart
|
| diff --git a/pkg/compiler/lib/src/types/type_mask.dart b/pkg/compiler/lib/src/types/type_mask.dart
|
| index 8e4e2d22ce07c0caceb80b7b93587592d33aaf27..bf095b860dbf609ef9cc5367f1a3cc661ad203ef 100644
|
| --- a/pkg/compiler/lib/src/types/type_mask.dart
|
| +++ b/pkg/compiler/lib/src/types/type_mask.dart
|
| @@ -33,7 +33,7 @@ abstract class TypeMask {
|
| }
|
|
|
| factory TypeMask.subclass(ClassElement base, ClassWorld classWorld) {
|
| - if (classWorld.hasAnySubclass(base)) {
|
| + if (classWorld.hasAnyStrictSubclass(base)) {
|
| return new FlatTypeMask.subclass(base);
|
| } else {
|
| return new TypeMask.exactOrEmpty(base, classWorld);
|
| @@ -44,7 +44,7 @@ abstract class TypeMask {
|
| if (classWorld.hasOnlySubclasses(base)) {
|
| return new TypeMask.subclass(base, classWorld);
|
| }
|
| - if (classWorld.hasAnySubtype(base)) {
|
| + if (classWorld.hasAnyStrictSubtype(base)) {
|
| return new FlatTypeMask.subtype(base);
|
| } else {
|
| return new TypeMask.exactOrEmpty(base, classWorld);
|
| @@ -69,7 +69,7 @@ abstract class TypeMask {
|
| }
|
|
|
| factory TypeMask.nonNullSubclass(ClassElement base, ClassWorld classWorld) {
|
| - if (classWorld.hasAnySubclass(base)) {
|
| + if (classWorld.hasAnyStrictSubclass(base)) {
|
| return new FlatTypeMask.nonNullSubclass(base);
|
| } else {
|
| return new TypeMask.nonNullExactOrEmpty(base, classWorld);
|
| @@ -80,7 +80,7 @@ abstract class TypeMask {
|
| if (classWorld.hasOnlySubclasses(base)) {
|
| return new TypeMask.nonNullSubclass(base, classWorld);
|
| }
|
| - if (classWorld.hasAnySubtype(base)) {
|
| + if (classWorld.hasAnyStrictSubtype(base)) {
|
| return new FlatTypeMask.nonNullSubtype(base);
|
| } else {
|
| return new TypeMask.nonNullExactOrEmpty(base, classWorld);
|
| @@ -126,13 +126,13 @@ abstract class TypeMask {
|
| return null;
|
| }
|
| if (mask.isSubclass) {
|
| - if (!classWorld.hasAnySubclass(mask.base)) {
|
| + if (!classWorld.hasAnyStrictSubclass(mask.base)) {
|
| return 'Subclass ${mask.base} does not have any subclasses.';
|
| }
|
| return null;
|
| }
|
| assert(mask.isSubtype);
|
| - if (!classWorld.hasAnySubtype(mask.base)) {
|
| + if (!classWorld.hasAnyStrictSubtype(mask.base)) {
|
| return 'Subtype ${mask.base} does not have any subclasses.';
|
| }
|
| if (classWorld.hasOnlySubclasses(mask.base)) {
|
|
|