diff --git a/libcxx/include/__type_traits/conditional.h b/libcxx/include/__type_traits/conditional.h --- a/libcxx/include/__type_traits/conditional.h +++ b/libcxx/include/__type_traits/conditional.h @@ -36,17 +36,22 @@ using _If _LIBCPP_NODEBUG = typename _IfImpl<_Cond>::template _Select<_IfRes, _ElseRes>; template - struct _LIBCPP_TEMPLATE_VIS conditional {typedef _If type;}; +struct _LIBCPP_TEMPLATE_VIS conditional { + using type _LIBCPP_NODEBUG = _If; +}; template - struct _LIBCPP_TEMPLATE_VIS conditional {typedef _Then type;}; +struct _LIBCPP_TEMPLATE_VIS conditional { + using type _LIBCPP_NODEBUG = _Then; +}; #if _LIBCPP_STD_VER > 11 template -using conditional_t = typename conditional<_Bp, _IfRes, _ElseRes>::type; +using conditional_t _LIBCPP_NODEBUG = typename conditional<_Bp, _IfRes, _ElseRes>::type; #endif // Helper so we can use "conditional_t" in all language versions. -template using __conditional_t = typename conditional<_Bp, _If, _Then>::type; +template +using __conditional_t _LIBCPP_NODEBUG = typename conditional<_Bp, _If, _Then>::type; _LIBCPP_END_NAMESPACE_STD