| Index: third_party/WebKit/Source/wtf/TypeTraits.h
|
| diff --git a/third_party/WebKit/Source/wtf/TypeTraits.h b/third_party/WebKit/Source/wtf/TypeTraits.h
|
| index c5199c173c2c4d6b9286d2ee525480ff9e326986..7449fdadfaffe4630679ce6dfc99e08637213826 100644
|
| --- a/third_party/WebKit/Source/wtf/TypeTraits.h
|
| +++ b/third_party/WebKit/Source/wtf/TypeTraits.h
|
| @@ -218,23 +218,23 @@ struct RemoveTemplate<OuterTemplate<T>, OuterTemplate> {
|
| // Here, we use a template specialization for same type case to allow incomplete
|
| // types.
|
|
|
| -template <typename T, typename U> struct IsBaseOf {
|
| - static const bool value = std::is_base_of<T, U>::value;
|
| +template <typename T, typename U> struct IsConvertible {
|
| + static const bool value = std::is_convertible<T, U>::value;
|
| };
|
|
|
| -template <typename T> struct IsBaseOf<T, T> {
|
| +template <typename T> struct IsConvertible<T, T> {
|
| static const bool value = true;
|
| };
|
|
|
| #define EnsurePtrConvertibleArgDecl(From, To) \
|
| - typename std::enable_if<WTF::IsBaseOf<To, From>::value>::type* = nullptr
|
| + typename std::enable_if<WTF::IsConvertible<From*, To*>::value>::type* = nullptr
|
| #define EnsurePtrConvertibleArgDefn(From, To) \
|
| - typename std::enable_if<WTF::IsBaseOf<To, From>::value>::type*
|
| + typename std::enable_if<WTF::IsConvertible<From*, To*>::value>::type*
|
| #else
|
| #define EnsurePtrConvertibleArgDecl(From, To) \
|
| - typename std::enable_if<std::is_base_of<To, From>::value>::type* = nullptr
|
| + typename std::enable_if<std::is_convertible<From*, To*>::value>::type* = nullptr
|
| #define EnsurePtrConvertibleArgDefn(From, To) \
|
| - typename std::enable_if<std::is_base_of<To, From>::value>::type*
|
| + typename std::enable_if<std::is_convertible<From*, To*>::value>::type*
|
| #endif
|
|
|
| } // namespace WTF
|
|
|