Don't omit template parameter names (Markus Schöpflin)

[SVN r17333]
This commit is contained in:
Douglas Gregor
2003-02-12 18:46:12 +00:00
parent 6ac619c12b
commit 25d109144d

View File

@ -295,44 +295,33 @@ namespace boost {
};
#ifndef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
# if BOOST_WORKAROUND(__HP_aCC, <= 33900)
template<bool cond, typename T> struct enable_if;
# else
template<bool, typename> struct enable_if;
# endif
template<typename T> struct enable_if<true, T> { typedef T type; };
template<typename T> struct enable_if<false, T> {};
#else
# if BOOST_WORKAROUND(__HP_aCC, <= 33900)
template<bool x>
# else
template<bool>
# endif
struct enabled
template<bool x>
struct enabled
{
template<typename T>
struct base
{
template<typename T>
struct base
{
typedef T type;
};
typedef T type;
};
};
template<>
struct enabled<false>
{
template<typename T>
struct base
{
};
};
template<bool Enabled, typename T>
struct enable_if : public enabled<Enabled>::template base<T>
template<>
struct enabled<false>
{
template<typename T>
struct base
{
};
};
template<bool Enabled, typename T>
struct enable_if : public enabled<Enabled>::template base<T>
{
};
#endif
// A type that is only used for comparisons against zero