aboutsummaryrefslogtreecommitdiff
path: root/cutl/details/boost/smart_ptr/detail/spinlock_pool.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'cutl/details/boost/smart_ptr/detail/spinlock_pool.hpp')
-rw-r--r--cutl/details/boost/smart_ptr/detail/spinlock_pool.hpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/cutl/details/boost/smart_ptr/detail/spinlock_pool.hpp b/cutl/details/boost/smart_ptr/detail/spinlock_pool.hpp
index 84bf69f..8ae09e3 100644
--- a/cutl/details/boost/smart_ptr/detail/spinlock_pool.hpp
+++ b/cutl/details/boost/smart_ptr/detail/spinlock_pool.hpp
@@ -41,7 +41,11 @@ public:
static spinlock & spinlock_for( void const * pv )
{
+#if defined(__VMS) && __INITIAL_POINTER_SIZE == 64
+ std::size_t i = reinterpret_cast< unsigned long long >( pv ) % 41;
+#else
std::size_t i = reinterpret_cast< std::size_t >( pv ) % 41;
+#endif
return pool_[ i ];
}