diff options
author | robot-contrib <robot-contrib@yandex-team.com> | 2022-12-29 09:59:51 +0300 |
---|---|---|
committer | robot-contrib <robot-contrib@yandex-team.com> | 2022-12-29 09:59:51 +0300 |
commit | 52ef875ceda9eb2b459d197424c2eb18c16d43e4 (patch) | |
tree | 4e762c38b476593daf716bf168394e9c34ae5f0f /contrib | |
parent | 7b0332e82f5869f1a8b65179a8fcd3555bafd3e8 (diff) | |
download | ydb-52ef875ceda9eb2b459d197424c2eb18c16d43e4.tar.gz |
Update contrib/restricted/boost/smart_ptr to 1.81.0
Diffstat (limited to 'contrib')
-rw-r--r-- | contrib/restricted/boost/smart_ptr/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp | 13 | ||||
-rw-r--r-- | contrib/restricted/boost/smart_ptr/include/boost/smart_ptr/intrusive_ptr.hpp | 2 |
2 files changed, 12 insertions, 3 deletions
diff --git a/contrib/restricted/boost/smart_ptr/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp b/contrib/restricted/boost/smart_ptr/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp index 8cd71791e4..d87b8441fc 100644 --- a/contrib/restricted/boost/smart_ptr/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp +++ b/contrib/restricted/boost/smart_ptr/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp @@ -30,7 +30,16 @@ class spinlock { public: - unsigned char v_; + // `bool` alignment is required for Apple PPC32 + // https://github.com/boostorg/smart_ptr/issues/105 + // https://github.com/PurpleI2P/i2pd/issues/1726 + // https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107590 + + union + { + unsigned char v_; + bool align_; + }; public: @@ -80,6 +89,6 @@ public: } // namespace detail } // namespace boost -#define BOOST_DETAIL_SPINLOCK_INIT {0} +#define BOOST_DETAIL_SPINLOCK_INIT {{0}} #endif // #ifndef BOOST_SMART_PTR_DETAIL_SPINLOCK_GCC_ATOMIC_HPP_INCLUDED diff --git a/contrib/restricted/boost/smart_ptr/include/boost/smart_ptr/intrusive_ptr.hpp b/contrib/restricted/boost/smart_ptr/include/boost/smart_ptr/intrusive_ptr.hpp index ef682df96c..895a12fe9a 100644 --- a/contrib/restricted/boost/smart_ptr/include/boost/smart_ptr/intrusive_ptr.hpp +++ b/contrib/restricted/boost/smart_ptr/include/boost/smart_ptr/intrusive_ptr.hpp @@ -245,7 +245,7 @@ template<class T, class U> inline bool operator!=(T * a, intrusive_ptr<U> const return a != b.get(); } -#if __GNUC__ == 2 && __GNUC_MINOR__ <= 96 +#if defined(__GNUC__) && __GNUC__ == 2 && __GNUC_MINOR__ <= 96 // Resolve the ambiguity between our op!= and the one in rel_ops |