Use boost::int128_type to avoid GCC warnings.

Without this the type_traits tests fail as they use -Werror.
This commit is contained in:
jzmaddock
2015-06-08 09:18:00 +01:00
parent 971fd13805
commit ef2d00be2a

View File

@@ -42,7 +42,7 @@ template<> struct arithmetic_type<3>
};
// There are five standard signed integer types:
// <EFBFBD>signed char<EFBFBD>, <EFBFBD>short int<EFBFBD>, <EFBFBD>int<EFBFBD>, <EFBFBD>long int<EFBFBD>, and <EFBFBD>long long int<EFBFBD>.
// signed char, short int, int, long int, and long long int.
template<> struct arithmetic_type<4>
{
@@ -75,8 +75,8 @@ template<> struct arithmetic_type<8>
};
// For each of the standard signed integer types, there exists a corresponding
// (but different) standard unsigned integer type: <EFBFBD>unsigned char<EFBFBD>, <EFBFBD>unsigned short int<EFBFBD>,
// <EFBFBD>unsigned int<EFBFBD>, <EFBFBD>unsigned long int<EFBFBD>, and <EFBFBD>unsigned long long int<EFBFBD>
// (but different) standard unsigned integer type: unsigned char, unsigned short int,
// unsigned int, unsigned long int, and unsigned long long int
template<> struct arithmetic_type<9>
{
@@ -152,13 +152,13 @@ template<> struct arithmetic_type<18>
template<> struct arithmetic_type<19>
{
typedef __int128 type;
typedef boost::int128_type type;
typedef char (&result_type) [19];
};
template<> struct arithmetic_type<20>
{
typedef unsigned __int128 type;
typedef boost::uint128_type type;
typedef char (&result_type) [20];
};