summaryrefslogtreecommitdiff
path: root/boost/utility/base_from_member.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'boost/utility/base_from_member.hpp')
-rw-r--r--boost/utility/base_from_member.hpp13
1 files changed, 7 insertions, 6 deletions
diff --git a/boost/utility/base_from_member.hpp b/boost/utility/base_from_member.hpp
index fc0e13c0d7..604541d19a 100644
--- a/boost/utility/base_from_member.hpp
+++ b/boost/utility/base_from_member.hpp
@@ -47,11 +47,11 @@
// {}
// This macro should only persist within this file.
-#define BOOST_PRIVATE_CTR_DEF( z, n, data ) \
- template < BOOST_PP_ENUM_PARAMS(n, typename T) > \
- explicit base_from_member( BOOST_PP_ENUM_BINARY_PARAMS(n, T, x) ) \
- : member( BOOST_PP_ENUM_PARAMS(n, x) ) \
- {} \
+#define BOOST_PRIVATE_CTR_DEF( z, n, data ) \
+ template < BOOST_PP_ENUM_PARAMS(n, typename T) > \
+ base_from_member( BOOST_PP_ENUM_BINARY_PARAMS(n, T, x) ) \
+ : member( BOOST_PP_ENUM_PARAMS(n, x) ) \
+ {} \
/**/
@@ -142,7 +142,8 @@ protected:
: member()
{}
- BOOST_PP_REPEAT_FROM_TO( 1, BOOST_PP_INC(BOOST_BASE_FROM_MEMBER_MAX_ARITY),
+ template < typename T0 > explicit base_from_member( T0 x0 ) : member( x0 ) {}
+ BOOST_PP_REPEAT_FROM_TO( 2, BOOST_PP_INC(BOOST_BASE_FROM_MEMBER_MAX_ARITY),
BOOST_PRIVATE_CTR_DEF, _ )
#endif