Commit ad2ae2f0 authored by jan.koester's avatar jan.koester
Browse files

test

parent f8f68eee
Loading
Loading
Loading
Loading
+10 −0
Changes for include/cxx/type_traits: 10 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -398,6 +398,11 @@ template<> struct __make_unsigned_base<unsigned long> { typedef unsigned lo
template<> struct __make_unsigned_base<long long>          { typedef unsigned long long type; };
template<> struct __make_unsigned_base<unsigned long long> { typedef unsigned long long type; };
template<> struct __make_unsigned_base<wchar_t>            { typedef unsigned int type; };
template<> struct __make_unsigned_base<char16_t>           { typedef unsigned short type; };
template<> struct __make_unsigned_base<char32_t>           { typedef unsigned int type; };
#ifdef __cpp_char8_t
template<> struct __make_unsigned_base<char8_t>            { typedef unsigned char type; };
#endif

template<class T> struct __make_signed_base;
template<> struct __make_signed_base<char>               { typedef signed char type; };
@@ -414,6 +419,11 @@ template<> struct __make_signed_base<unsigned long> { typedef long type; };
template<> struct __make_signed_base<long long>          { typedef long long type; };
template<> struct __make_signed_base<unsigned long long> { typedef long long type; };
template<> struct __make_signed_base<wchar_t>             { typedef int type; };
template<> struct __make_signed_base<char16_t>            { typedef short type; };
template<> struct __make_signed_base<char32_t>            { typedef int type; };
#ifdef __cpp_char8_t
template<> struct __make_signed_base<char8_t>             { typedef signed char type; };
#endif

template<class T> struct make_unsigned {
    typedef typename remove_cv<T>::type __unqual;