Updated make_signed and make_unsigned for Clang fixes
This commit is contained in:
@@ -136,6 +136,30 @@ namespace detail
|
||||
typedef int64 type;
|
||||
};
|
||||
|
||||
template <>
|
||||
struct make_signed<long>
|
||||
{
|
||||
typedef long type;
|
||||
};
|
||||
|
||||
template <>
|
||||
struct make_signed<long long>
|
||||
{
|
||||
typedef long long type;
|
||||
};
|
||||
|
||||
template <>
|
||||
struct make_signed<unsigned long>
|
||||
{
|
||||
typedef long type;
|
||||
};
|
||||
|
||||
template <>
|
||||
struct make_signed<unsigned long long>
|
||||
{
|
||||
typedef long long type;
|
||||
};
|
||||
|
||||
template <typename genType>
|
||||
struct make_unsigned
|
||||
{};
|
||||
@@ -187,6 +211,30 @@ namespace detail
|
||||
{
|
||||
typedef uint64 type;
|
||||
};
|
||||
|
||||
template <>
|
||||
struct make_unsigned<long>
|
||||
{
|
||||
typedef unsigned long type;
|
||||
};
|
||||
|
||||
template <>
|
||||
struct make_unsigned<long long>
|
||||
{
|
||||
typedef unsigned long long type;
|
||||
};
|
||||
|
||||
template <>
|
||||
struct make_unsigned<unsigned long>
|
||||
{
|
||||
typedef unsigned long type;
|
||||
};
|
||||
|
||||
template <>
|
||||
struct make_unsigned<unsigned long long>
|
||||
{
|
||||
typedef unsigned long long type;
|
||||
};
|
||||
}//namespace detail
|
||||
|
||||
typedef detail::int8 int8;
|
||||
|
||||
Reference in New Issue
Block a user