Commit df2a7a38 by Mikhail Maltsev Committed by Mikhail Maltsev

Fix partial specialization syntax of wide int traits.

gcc/
	* wide-int.h (struct binary_traits): Fix partial specialization syntax.
	(struct int_traits): Likewise.

From-SVN: r225993
parent 3e24aa1b
2015-07-20 Mikhail Maltsev <maltsevm@gmail.com>
* wide-int.h (struct binary_traits): Fix partial specialization syntax.
(struct int_traits): Likewise.
2015-07-18 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> 2015-07-18 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* vmsdbgout.c (vmsdbgout_decl): Change name of prototyped * vmsdbgout.c (vmsdbgout_decl): Change name of prototyped
......
...@@ -360,21 +360,18 @@ namespace wi ...@@ -360,21 +360,18 @@ namespace wi
inputs. Note that CONST_PRECISION and VAR_PRECISION cannot be inputs. Note that CONST_PRECISION and VAR_PRECISION cannot be
mixed, in order to give stronger type checking. When both inputs mixed, in order to give stronger type checking. When both inputs
are CONST_PRECISION, they must have the same precision. */ are CONST_PRECISION, they must have the same precision. */
template <>
template <typename T1, typename T2> template <typename T1, typename T2>
struct binary_traits <T1, T2, FLEXIBLE_PRECISION, FLEXIBLE_PRECISION> struct binary_traits <T1, T2, FLEXIBLE_PRECISION, FLEXIBLE_PRECISION>
{ {
typedef widest_int result_type; typedef widest_int result_type;
}; };
template <>
template <typename T1, typename T2> template <typename T1, typename T2>
struct binary_traits <T1, T2, FLEXIBLE_PRECISION, VAR_PRECISION> struct binary_traits <T1, T2, FLEXIBLE_PRECISION, VAR_PRECISION>
{ {
typedef wide_int result_type; typedef wide_int result_type;
}; };
template <>
template <typename T1, typename T2> template <typename T1, typename T2>
struct binary_traits <T1, T2, FLEXIBLE_PRECISION, CONST_PRECISION> struct binary_traits <T1, T2, FLEXIBLE_PRECISION, CONST_PRECISION>
{ {
...@@ -384,14 +381,12 @@ namespace wi ...@@ -384,14 +381,12 @@ namespace wi
<int_traits <T2>::precision> > result_type; <int_traits <T2>::precision> > result_type;
}; };
template <>
template <typename T1, typename T2> template <typename T1, typename T2>
struct binary_traits <T1, T2, VAR_PRECISION, FLEXIBLE_PRECISION> struct binary_traits <T1, T2, VAR_PRECISION, FLEXIBLE_PRECISION>
{ {
typedef wide_int result_type; typedef wide_int result_type;
}; };
template <>
template <typename T1, typename T2> template <typename T1, typename T2>
struct binary_traits <T1, T2, CONST_PRECISION, FLEXIBLE_PRECISION> struct binary_traits <T1, T2, CONST_PRECISION, FLEXIBLE_PRECISION>
{ {
...@@ -401,7 +396,6 @@ namespace wi ...@@ -401,7 +396,6 @@ namespace wi
<int_traits <T1>::precision> > result_type; <int_traits <T1>::precision> > result_type;
}; };
template <>
template <typename T1, typename T2> template <typename T1, typename T2>
struct binary_traits <T1, T2, CONST_PRECISION, CONST_PRECISION> struct binary_traits <T1, T2, CONST_PRECISION, CONST_PRECISION>
{ {
...@@ -412,7 +406,6 @@ namespace wi ...@@ -412,7 +406,6 @@ namespace wi
<int_traits <T1>::precision> > result_type; <int_traits <T1>::precision> > result_type;
}; };
template <>
template <typename T1, typename T2> template <typename T1, typename T2>
struct binary_traits <T1, T2, VAR_PRECISION, VAR_PRECISION> struct binary_traits <T1, T2, VAR_PRECISION, VAR_PRECISION>
{ {
...@@ -876,7 +869,6 @@ generic_wide_int <storage>::dump () const ...@@ -876,7 +869,6 @@ generic_wide_int <storage>::dump () const
namespace wi namespace wi
{ {
template <>
template <typename storage> template <typename storage>
struct int_traits < generic_wide_int <storage> > struct int_traits < generic_wide_int <storage> >
: public wi::int_traits <storage> : public wi::int_traits <storage>
...@@ -955,7 +947,6 @@ inline wide_int_ref_storage <SE>::wide_int_ref_storage (const T &x, ...@@ -955,7 +947,6 @@ inline wide_int_ref_storage <SE>::wide_int_ref_storage (const T &x,
namespace wi namespace wi
{ {
template <>
template <bool SE> template <bool SE>
struct int_traits <wide_int_ref_storage <SE> > struct int_traits <wide_int_ref_storage <SE> >
{ {
...@@ -1142,7 +1133,6 @@ public: ...@@ -1142,7 +1133,6 @@ public:
namespace wi namespace wi
{ {
template <>
template <int N> template <int N>
struct int_traits < fixed_wide_int_storage <N> > struct int_traits < fixed_wide_int_storage <N> >
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment