[libc++] Remove the _LIBCPP_BOOL_CONSTANT macro
I suspect this is a remnant of the times when we were not comfortable
using Clang's C++11/14 extensions everywhere, but now we do, so we can
use _BoolConstant instead and get rid of the macro.
Differential Revision: https://reviews.llvm.org/D122351
NOKEYCHECK=True
GitOrigin-RevId: f900f7025c7baf4f24dd6425cf0609182ee7efd5
diff --git a/include/exception b/include/exception
index 5460b73..a60c8e6 100644
--- a/include/exception
+++ b/include/exception
@@ -300,10 +300,10 @@
}
template <class _From, class _To>
-struct __can_dynamic_cast : public _LIBCPP_BOOL_CONSTANT(
+struct __can_dynamic_cast : _BoolConstant<
is_polymorphic<_From>::value &&
(!is_base_of<_To, _From>::value ||
- is_convertible<const _From*, const _To*>::value)) {};
+ is_convertible<const _From*, const _To*>::value)> {};
template <class _Ep>
inline _LIBCPP_INLINE_VISIBILITY