| Index: sdk/lib/_internal/compiler/implementation/types/inferrer_visitor.dart
|
| ===================================================================
|
| --- sdk/lib/_internal/compiler/implementation/types/inferrer_visitor.dart (revision 24183)
|
| +++ sdk/lib/_internal/compiler/implementation/types/inferrer_visitor.dart (working copy)
|
| @@ -31,9 +31,9 @@
|
| * Returns the least upper bound between [firstType] and
|
| * [secondType].
|
| */
|
| - TypeMask computeLUB(TypeMask firstType,
|
| - TypeMask secondType,
|
| - Compiler compiler) {
|
| +TypeMask computeLUB(TypeMask firstType,
|
| + TypeMask secondType,
|
| + Compiler compiler) {
|
| TypeMask dynamicType = compiler.typesTask.dynamicType;
|
| if (firstType == null) {
|
| return secondType;
|
| @@ -41,6 +41,8 @@
|
| return secondType;
|
| } else if (firstType == dynamicType) {
|
| return firstType;
|
| + } else if (firstType == secondType) {
|
| + return firstType;
|
| } else {
|
| TypeMask union = firstType.union(secondType, compiler);
|
| // TODO(kasperl): If the union isn't nullable it seems wasteful
|
|
|