diff options
Diffstat (limited to 'boost/align/detail/align.hpp')
-rw-r--r-- | boost/align/detail/align.hpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/boost/align/detail/align.hpp b/boost/align/detail/align.hpp index a58dcea747..905940ad77 100644 --- a/boost/align/detail/align.hpp +++ b/boost/align/detail/align.hpp @@ -20,8 +20,8 @@ align(std::size_t alignment, std::size_t size, void*& ptr, { BOOST_ASSERT(detail::is_alignment(alignment)); if (size <= space) { - char* p = reinterpret_cast<char*>((reinterpret_cast<std:: - size_t>(ptr) + alignment - 1) & ~(alignment - 1)); + char* p = reinterpret_cast<char*>(~(alignment - 1) & + (reinterpret_cast<std::size_t>(ptr) + alignment - 1)); std::size_t n = space - (p - static_cast<char*>(ptr)); if (size <= n) { ptr = p; |