Work around an MSVC-stlport ICE

[SVN r24567]
This commit is contained in:
Dave Abrahams
2004-08-18 19:00:18 +00:00
parent c141f6cc59
commit e469abbf57

View File

@ -24,6 +24,10 @@ template <bool GreaterEqual, bool LessEqual>
struct minimum_category_impl struct minimum_category_impl
# if BOOST_WORKAROUND(BOOST_MSVC, == 1200) # if BOOST_WORKAROUND(BOOST_MSVC, == 1200)
{ {
template <class T1, class T2> struct apply
{
typedef T2 type;
};
typedef void type; typedef void type;
} }
# endif # endif
@ -82,7 +86,7 @@ struct minimum_category
|| is_same<T1,int>::value || is_same<T1,int>::value
# endif # endif
> outer; > outer;
typedef typename outer::template apply<T1,T2> inner; typedef typename outer::template apply<T1,T2> inner;
typedef typename inner::type type; typedef typename inner::type type;
@ -96,7 +100,7 @@ struct minimum_category<mpl::_1,mpl::_2>
struct apply : minimum_category<T1,T2> struct apply : minimum_category<T1,T2>
{}; {};
}; };
# if BOOST_WORKAROUND(BOOST_MSVC, == 1200) // ETI workaround # if BOOST_WORKAROUND(BOOST_MSVC, == 1200) // ETI workaround
template <> template <>
struct minimum_category<int,int> struct minimum_category<int,int>
@ -104,7 +108,7 @@ struct minimum_category<int,int>
typedef int type; typedef int type;
}; };
# endif # endif
}} // namespace boost::detail }} // namespace boost::detail
#endif // MINIMUM_CATEGORY_DWA20031119_HPP #endif // MINIMUM_CATEGORY_DWA20031119_HPP