mirror of
https://github.com/boostorg/unordered.git
synced 2025-07-30 03:17:15 +02:00
Unordered: Fix namespaces for renaming in bcp. Refs #6905.
[SVN r78491]
This commit is contained in:
@ -186,6 +186,9 @@ C++11 support has resulted in some breaking changes:
|
|||||||
Fix some Sun specific code.
|
Fix some Sun specific code.
|
||||||
* [@https://svn.boost.org/trac/boost/ticket/6190 Ticket 6190]:
|
* [@https://svn.boost.org/trac/boost/ticket/6190 Ticket 6190]:
|
||||||
Avoid gcc's `-Wshadow` warning.
|
Avoid gcc's `-Wshadow` warning.
|
||||||
|
* [@https://svn.boost.org/trac/boost/ticket/6905 Ticket 6905]:
|
||||||
|
Make namespaces in macros compatible with `bcp` custom namespaces.
|
||||||
|
Fixed by Luke Elliott.
|
||||||
* Remove some of the smaller prime number of buckets, as they may make
|
* Remove some of the smaller prime number of buckets, as they may make
|
||||||
collisions quite probable (e.g. multiples of 5 are very common because
|
collisions quite probable (e.g. multiples of 5 are very common because
|
||||||
we used base 10).
|
we used base 10).
|
||||||
|
@ -200,7 +200,7 @@ BOOST_PP_REPEAT_FROM_TO(1, BOOST_UNORDERED_EMPLACE_LIMIT, BOOST_UNORDERED_EARGS,
|
|||||||
|
|
||||||
# define BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE(n, namespace_) \
|
# define BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE(n, namespace_) \
|
||||||
template<typename T> \
|
template<typename T> \
|
||||||
void construct_from_tuple(T* ptr, namespace_::tuple<>) \
|
void construct_from_tuple(T* ptr, namespace_ tuple<>) \
|
||||||
{ \
|
{ \
|
||||||
new ((void*) ptr) T(); \
|
new ((void*) ptr) T(); \
|
||||||
} \
|
} \
|
||||||
@ -211,7 +211,7 @@ BOOST_PP_REPEAT_FROM_TO(1, BOOST_UNORDERED_EMPLACE_LIMIT, BOOST_UNORDERED_EARGS,
|
|||||||
# define BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE_IMPL(z, n, namespace_) \
|
# define BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE_IMPL(z, n, namespace_) \
|
||||||
template<typename T, BOOST_PP_ENUM_PARAMS_Z(z, n, typename A)> \
|
template<typename T, BOOST_PP_ENUM_PARAMS_Z(z, n, typename A)> \
|
||||||
void construct_from_tuple(T* ptr, \
|
void construct_from_tuple(T* ptr, \
|
||||||
namespace_::tuple<BOOST_PP_ENUM_PARAMS_Z(z, n, A)> const& x) \
|
namespace_ tuple<BOOST_PP_ENUM_PARAMS_Z(z, n, A)> const& x) \
|
||||||
{ \
|
{ \
|
||||||
new ((void*) ptr) T( \
|
new ((void*) ptr) T( \
|
||||||
BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_GET_TUPLE_ARG, namespace_) \
|
BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_GET_TUPLE_ARG, namespace_) \
|
||||||
@ -219,7 +219,7 @@ BOOST_PP_REPEAT_FROM_TO(1, BOOST_UNORDERED_EMPLACE_LIMIT, BOOST_UNORDERED_EARGS,
|
|||||||
}
|
}
|
||||||
|
|
||||||
# define BOOST_UNORDERED_GET_TUPLE_ARG(z, n, namespace_) \
|
# define BOOST_UNORDERED_GET_TUPLE_ARG(z, n, namespace_) \
|
||||||
namespace_::get<n>(x)
|
namespace_ get<n>(x)
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
@ -229,7 +229,7 @@ BOOST_PP_REPEAT_FROM_TO(1, BOOST_UNORDERED_EMPLACE_LIMIT, BOOST_UNORDERED_EARGS,
|
|||||||
template<typename T> \
|
template<typename T> \
|
||||||
void construct_from_tuple_impl( \
|
void construct_from_tuple_impl( \
|
||||||
boost::unordered::detail::length<0>, T* ptr, \
|
boost::unordered::detail::length<0>, T* ptr, \
|
||||||
namespace_::tuple<>) \
|
namespace_ tuple<>) \
|
||||||
{ \
|
{ \
|
||||||
new ((void*) ptr) T(); \
|
new ((void*) ptr) T(); \
|
||||||
} \
|
} \
|
||||||
@ -241,7 +241,7 @@ BOOST_PP_REPEAT_FROM_TO(1, BOOST_UNORDERED_EMPLACE_LIMIT, BOOST_UNORDERED_EARGS,
|
|||||||
template<typename T, BOOST_PP_ENUM_PARAMS_Z(z, n, typename A)> \
|
template<typename T, BOOST_PP_ENUM_PARAMS_Z(z, n, typename A)> \
|
||||||
void construct_from_tuple_impl( \
|
void construct_from_tuple_impl( \
|
||||||
boost::unordered::detail::length<n>, T* ptr, \
|
boost::unordered::detail::length<n>, T* ptr, \
|
||||||
namespace_::tuple<BOOST_PP_ENUM_PARAMS_Z(z, n, A)> const& x) \
|
namespace_ tuple<BOOST_PP_ENUM_PARAMS_Z(z, n, A)> const& x) \
|
||||||
{ \
|
{ \
|
||||||
new ((void*) ptr) T( \
|
new ((void*) ptr) T( \
|
||||||
BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_GET_TUPLE_ARG, namespace_) \
|
BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_GET_TUPLE_ARG, namespace_) \
|
||||||
@ -249,14 +249,14 @@ BOOST_PP_REPEAT_FROM_TO(1, BOOST_UNORDERED_EMPLACE_LIMIT, BOOST_UNORDERED_EARGS,
|
|||||||
}
|
}
|
||||||
|
|
||||||
# define BOOST_UNORDERED_GET_TUPLE_ARG(z, n, namespace_) \
|
# define BOOST_UNORDERED_GET_TUPLE_ARG(z, n, namespace_) \
|
||||||
namespace_::get<n>(x)
|
namespace_ get<n>(x)
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE(10, boost)
|
BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE(10, boost::)
|
||||||
|
|
||||||
#if !defined(__SUNPRO_CC) && !defined(BOOST_NO_0X_HDR_TUPLE)
|
#if !defined(__SUNPRO_CC) && !defined(BOOST_NO_0X_HDR_TUPLE)
|
||||||
BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE(10, std)
|
BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE(10, std::)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#undef BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE
|
#undef BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE
|
||||||
|
Reference in New Issue
Block a user