| Index: src/types.cc
|
| diff --git a/src/types.cc b/src/types.cc
|
| index b65f167daeb348afb5d033b72bad53f38de1cbb9..b1002be26ae93f2bcf25cf6d8ba6453ef605484b 100644
|
| --- a/src/types.cc
|
| +++ b/src/types.cc
|
| @@ -173,7 +173,7 @@ TypeImpl<Config>::BitsetType::Lub(TypeImpl* type) {
|
| if (type->IsRange()) return type->AsRange()->Lub();
|
| if (type->IsContext()) return kInternal & kTaggedPointer;
|
| if (type->IsArray()) return kOtherObject;
|
| - if (type->IsFunction()) return kOtherObject; // TODO(rossberg): kFunction
|
| + if (type->IsFunction()) return kFunction;
|
| UNREACHABLE();
|
| return kNone;
|
| }
|
| @@ -247,7 +247,8 @@ TypeImpl<Config>::BitsetType::Lub(i::Map* map) {
|
| if (map->is_undetectable()) return kUndetectable;
|
| return kOtherObject;
|
| case JS_FUNCTION_TYPE:
|
| - return kOtherObject; // TODO(rossberg): there should be a Function type.
|
| + if (map->is_undetectable()) return kUndetectable;
|
| + return kFunction;
|
| case JS_REGEXP_TYPE:
|
| return kOtherObject; // TODO(rossberg): there should be a RegExp type.
|
| case JS_PROXY_TYPE:
|
|
|