Boost logo

Boost :

Subject: [boost] [atomic] errors since the introduction of constexpr noexcept.
From: Vicente J. Botet Escriba (vicente.botet_at_[hidden])
Date: 2013-02-17 07:15:33


Hi,

There are some errors since the introduction of constexpr noexcept.
Could you apply this patch?

Best,
Vicente

svn diff boost/atomic
Index: boost/atomic/detail/cas64strong.hpp
===================================================================
--- boost/atomic/detail/cas64strong.hpp (revision 82919)
+++ boost/atomic/detail/cas64strong.hpp (working copy)
@@ -13,6 +13,7 @@
  // atomic, so they are funnelled through cmpxchg as well.

  #include <cstddef>
+#include <boost/config.hpp>
  #include <boost/cstdint.hpp>
  #include <boost/memory_order.hpp>
  #include <boost/atomic/detail/config.hpp>
@@ -34,7 +35,8 @@
      typedef T value_type;
      typedef T difference_type;
  public:
- BOOST_CONSTEXPR base_atomic(atomic_type v) BOOST_NOEXCEPT: v_(v) {}
+ int xxx;
+ BOOST_CONSTEXPR base_atomic(value_type v) BOOST_NOEXCEPT: v_(v) {}
      base_atomic(void) {}

      void
@@ -158,7 +160,7 @@
      typedef void * value_type;
      typedef ptrdiff_t difference_type;
  public:
- BOOST_CONSTEXPR base_atomic(atomic_type v) BOOST_NOEXCEPT: v_(v) {}
+ BOOST_CONSTEXPR base_atomic(value_type v) BOOST_NOEXCEPT: v_(v) {}
      base_atomic(void) {}

      void
@@ -253,7 +255,7 @@
      typedef T * value_type;
      typedef ptrdiff_t difference_type;
  public:
- BOOST_CONSTEXPR base_atomic(atomic_type v) BOOST_NOEXCEPT: v_(v) {}
+ BOOST_CONSTEXPR base_atomic(value_type v) BOOST_NOEXCEPT: v_(v) {}
      base_atomic(void) {}

      void
Index: boost/atomic/detail/gcc-x86.hpp
===================================================================
--- boost/atomic/detail/gcc-x86.hpp (revision 82919)
+++ boost/atomic/detail/gcc-x86.hpp (working copy)
@@ -1621,7 +1621,7 @@

  template<typename T>
  inline T
-platform_load64(const volatile BOOST_NOEXCEPT T * ptr)
+platform_load64(const volatile T * ptr) BOOST_NOEXCEPT
  {
      T expected = *ptr;
      for (; !platform_cmpxchg64_strong(expected, expected,
const_cast<volatile T*>(ptr));)


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk