From 91b142ffc3c32bcc76db6e2bb349cce5c98ab595 Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Tue, 16 Jun 2015 23:33:06 +0100 Subject: [PATCH] * include/bits/allocated_ptr.h (__allocated_ptr): Use __addressof. From-SVN: r224540 --- libstdc++-v3/ChangeLog | 2 ++ libstdc++-v3/include/bits/allocated_ptr.h | 5 +++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index e6ed6ab1689..a9ed2064aea 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,5 +1,7 @@ 2015-06-16 Jonathan Wakely + * include/bits/allocated_ptr.h (__allocated_ptr): Use __addressof. + * include/bits/list.tcc (list::operator=(const list&), list::merge): Use __addressof instead of operator&. (list::sort): Use array-to-pointer decay instead of operator&. diff --git a/libstdc++-v3/include/bits/allocated_ptr.h b/libstdc++-v3/include/bits/allocated_ptr.h index 63088c22d80..d7f00d70630 100644 --- a/libstdc++-v3/include/bits/allocated_ptr.h +++ b/libstdc++-v3/include/bits/allocated_ptr.h @@ -50,14 +50,15 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION /// Take ownership of __ptr __allocated_ptr(_Alloc& __a, pointer __ptr) noexcept - : _M_alloc(&__a), _M_ptr(__ptr) + : _M_alloc(std::__addressof(__a)), _M_ptr(__ptr) { } /// Convert __ptr to allocator's pointer type and take ownership of it template>> __allocated_ptr(_Alloc& __a, _Ptr __ptr) - : _M_alloc(&__a), _M_ptr(pointer_traits::pointer_to(*__ptr)) + : _M_alloc(std::__addressof(__a)), + _M_ptr(pointer_traits::pointer_to(*__ptr)) { } /// Transfer ownership of the owned pointer -- 2.30.2