Ticket #3985: config-interprocess.patch

File config-interprocess.patch, 16.9 KB (added by Daniel James, 13 years ago)
  • boost/interprocess/detail/move.hpp

     
    6262
    6363/// @endcond
    6464
    65 #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     65#if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    6666
    6767//#define BOOST_MOVE_ASSIGN_FROM_NON_CONST_RVALUE
    6868
     
    273273}  //namespace interprocess {
    274274}  //namespace boost
    275275
    276 #else    //BOOST_HAS_RVALUE_REFS
     276#else    // BOOST_NO_RVALUE_REFERENCES
    277277
    278278#include <boost/type_traits/remove_reference.hpp>
    279279
     
    451451}  //namespace interprocess {
    452452}  //namespace boost {
    453453
    454 #endif   //BOOST_HAS_RVALUE_REFS
     454#endif   // BOOST_NO_RVALUE_REFERENCES
    455455
    456456namespace boost {
    457457namespace interprocess {
     
    473473   public:
    474474   typedef It                                                              iterator_type;
    475475   typedef typename std::iterator_traits<iterator_type>::value_type        value_type;
    476    #if defined(BOOST_HAS_RVALUE_REFS) || defined(BOOST_MOVE_DOXYGEN_INVOKED)
     476   #if !defined(BOOST_NO_RVALUE_REFERENCES) || defined(BOOST_MOVE_DOXYGEN_INVOKED)
    477477   typedef value_type &&                                                   reference;
    478478   #else
    479479   typedef typename ::boost::mpl::if_
     
    502502
    503503   reference operator*() const
    504504   {
    505       #if defined(BOOST_HAS_RVALUE_REFS)
     505      #if !defined(BOOST_NO_RVALUE_REFERENCES)
    506506      return *m_it;
    507507      #else
    508508      return ::boost::interprocess::move(*m_it);
     
    538538
    539539   reference operator[](difference_type n) const
    540540   {
    541       #if defined(BOOST_HAS_RVALUE_REFS)
     541      #if !defined(BOOST_NO_RVALUE_REFERENCES)
    542542      return m_it[n];
    543543      #else
    544544      return ::boost::interprocess::move(m_it[n]);
  • boost/interprocess/detail/preprocessor.hpp

     
    3636//This cast is ugly but it is necessary until "perfect forwarding"
    3737//is achieved in C++0x. Meanwhile, if we want to be able to
    3838//bind rvalues with non-const references, we have to be ugly
    39 #ifdef BOOST_HAS_RVALUE_REFS
     39#ifndef BOOST_NO_RVALUE_REFERENCES
    4040   #define BOOST_INTERPROCESS_PP_PARAM_LIST(z, n, data) \
    4141   BOOST_PP_CAT(P, n) && BOOST_PP_CAT(p, n) \
    4242   //!
     
    4646   //!
    4747#endif
    4848
    49 #ifdef BOOST_HAS_RVALUE_REFS
     49#ifndef BOOST_NO_RVALUE_REFERENCES
    5050   #define BOOST_INTERPROCESS_PARAM(U, u) \
    5151   U && u \
    5252   //!
     
    5656   //!
    5757#endif
    5858
    59 #ifdef BOOST_HAS_RVALUE_REFS
     59#ifndef BOOST_NO_RVALUE_REFERENCES
    6060#define BOOST_INTERPROCESS_AUX_PARAM_INIT(z, n, data) \
    6161  BOOST_PP_CAT(m_p, n) (BOOST_PP_CAT(p, n))           \
    6262//!
     
    7070  BOOST_PP_CAT(++m_p, n)                        \
    7171//!
    7272
    73 #ifdef BOOST_HAS_RVALUE_REFS
     73#ifndef BOOST_NO_RVALUE_REFERENCES
    7474#define BOOST_INTERPROCESS_AUX_PARAM_DEFINE(z, n, data)  \
    7575  BOOST_PP_CAT(P, n) && BOOST_PP_CAT(m_p, n);            \
    7676//!
  • boost/interprocess/detail/workaround.hpp

     
    115115
    116116#endif
    117117
    118 #if     defined(BOOST_HAS_RVALUE_REFS) && defined(BOOST_HAS_VARIADIC_TMPL)\
     118#if     !defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_NO_VARIADIC_TEMPLATES)\
    119119    && !defined(BOOST_INTERPROCESS_DISABLE_VARIADIC_TMPL)
    120120#define BOOST_INTERPROCESS_PERFECT_FORWARDING
    121121#endif
  • boost/interprocess/containers/container/list.hpp

     
    572572   void push_front(insert_const_ref_type x)   
    573573   {  this->insert(this->cbegin(), x);  }
    574574
    575    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     575   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    576576   void push_front(T &x) { push_front(const_cast<const T &>(x)); }
    577577
    578578   template<class U>
     
    597597   void push_back (insert_const_ref_type x)   
    598598   {  this->insert(this->cend(), x);    }
    599599
    600    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     600   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    601601   void push_back(T &x) { push_back(const_cast<const T &>(x)); }
    602602
    603603   template<class U>
     
    808808   iterator insert(const_iterator position, insert_const_ref_type x)
    809809   {  return this->priv_insert(position, x); }
    810810
    811    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     811   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    812812   iterator insert(const_iterator position, T &x) { return this->insert(position, const_cast<const T &>(x)); }
    813813
    814814   template<class U>
  • boost/interprocess/containers/container/set.hpp

     
    357357   std::pair<iterator,bool> insert(insert_const_ref_type x)
    358358   {  return priv_insert(x); }
    359359
    360    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     360   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    361361   std::pair<iterator,bool> insert(T &x)
    362362   { return this->insert(const_cast<const T &>(x)); }
    363363
     
    389389   iterator insert(const_iterator p, insert_const_ref_type x)
    390390   {  return priv_insert(p, x); }
    391391
    392    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     392   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    393393   iterator insert(const_iterator position, T &x)
    394394   { return this->insert(position, const_cast<const T &>(x)); }
    395395
     
    912912   iterator insert(insert_const_ref_type x)
    913913   {  return priv_insert(x); }
    914914
    915    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     915   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    916916   iterator insert(T &x)
    917917   { return this->insert(const_cast<const T &>(x)); }
    918918
     
    942942   iterator insert(const_iterator p, insert_const_ref_type x)
    943943   {  return priv_insert(p, x); }
    944944
    945    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     945   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    946946   iterator insert(const_iterator position, T &x)
    947947   { return this->insert(position, const_cast<const T &>(x)); }
    948948
  • boost/interprocess/containers/container/detail/workaround.hpp

     
    1313
    1414#include <boost/interprocess/containers/container/detail/config_begin.hpp>
    1515
    16 #if     defined(BOOST_HAS_RVALUE_REFS) && defined(BOOST_HAS_VARIADIC_TMPL)\
     16#if     !defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_NO_VARIADIC_TEMPLATES)\
    1717    && !defined(BOOST_INTERPROCESS_DISABLE_VARIADIC_TMPL)
    1818#define BOOST_CONTAINERS_PERFECT_FORWARDING
    1919
  • boost/interprocess/containers/container/detail/pair.hpp

     
    100100
    101101   template<class U>
    102102   pair( BOOST_CONTAINERS_PARAM(U, u)
    103        #ifndef BOOST_HAS_RVALUE_REFS
     103       #ifdef BOOST_NO_RVALUE_REFERENCES
    104104       , typename containers_detail::disable_if
    105105          < containers_detail::is_same<U, ::boost::interprocess::rv<pair> > >::type* = 0
    106106       #endif
  • boost/interprocess/containers/container/detail/tree.hpp

     
    200200};
    201201
    202202}//namespace containers_detail {
    203 #if !defined(BOOST_HAS_RVALUE_REFS)
     203#if defined(BOOST_NO_RVALUE_REFERENCES)
    204204template<class T, class VoidPointer>
    205205struct has_own_construct_from_it
    206206   < boost::container::containers_detail::rbtree_node<T, VoidPointer> >
  • boost/interprocess/containers/container/detail/algorithms.hpp

     
    3535namespace boost {
    3636namespace container {
    3737
    38 #if !defined(BOOST_HAS_RVALUE_REFS)
     38#if defined(BOOST_NO_RVALUE_REFERENCES)
    3939template<class T>
    4040struct has_own_construct_from_it
    4141{
  • boost/interprocess/containers/container/detail/preprocessor.hpp

     
    3636//This cast is ugly but it is necessary until "perfect forwarding"
    3737//is achieved in C++0x. Meanwhile, if we want to be able to
    3838//bind rvalues with non-const references, we have to be ugly
    39 #ifdef BOOST_HAS_RVALUE_REFS
     39#ifndef BOOST_NO_RVALUE_REFERENCES
    4040   #define BOOST_CONTAINERS_PP_PARAM_LIST(z, n, data) \
    4141   BOOST_PP_CAT(P, n) && BOOST_PP_CAT(p, n) \
    4242   //!
     
    4646   //!
    4747#endif
    4848
    49 #ifdef BOOST_HAS_RVALUE_REFS
     49#ifndef BOOST_NO_RVALUE_REFERENCES
    5050   #define BOOST_CONTAINERS_PARAM(U, u) \
    5151   U && u \
    5252   //!
     
    5656   //!
    5757#endif
    5858
    59 #ifdef BOOST_HAS_RVALUE_REFS
     59#ifndef BOOST_NO_RVALUE_REFERENCES
    6060#define BOOST_CONTAINERS_AUX_PARAM_INIT(z, n, data) \
    6161  BOOST_PP_CAT(m_p, n) (BOOST_PP_CAT(p, n))           \
    6262//!
     
    7070  BOOST_PP_CAT(++m_p, n)                        \
    7171//!
    7272
    73 #ifdef BOOST_HAS_RVALUE_REFS
     73#ifndef BOOST_NO_RVALUE_REFERENCES
    7474#define BOOST_CONTAINERS_AUX_PARAM_DEFINE(z, n, data)  \
    7575  BOOST_PP_CAT(P, n) && BOOST_PP_CAT(m_p, n);            \
    7676//!
  • boost/interprocess/containers/container/stable_vector.hpp

     
    672672   void push_back(insert_const_ref_type x)
    673673   {  return priv_push_back(x);  }
    674674
    675    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     675   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    676676   void push_back(T &x) { push_back(const_cast<const T &>(x)); }
    677677
    678678   template<class U>
     
    689689   iterator insert(const_iterator position, insert_const_ref_type x)
    690690   {  return this->priv_insert(position, x); }
    691691
    692    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     692   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    693693   iterator insert(const_iterator position, T &x) { return this->insert(position, const_cast<const T &>(x)); }
    694694
    695695   template<class U>
  • boost/interprocess/containers/container/slist.hpp

     
    631631   void push_front(insert_const_ref_type x)
    632632   {  return priv_push_front(x); }
    633633
    634    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     634   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    635635   void push_front(T &x) { push_front(const_cast<const T &>(x)); }
    636636
    637637   template<class U>
     
    692692   iterator insert_after(const_iterator prev_pos, insert_const_ref_type x)
    693693   {  return this->priv_insert_after(prev_pos, x); }
    694694
    695    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     695   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    696696   iterator insert_after(const_iterator position, T &x)
    697697   { return this->insert_after(position, const_cast<const T &>(x)); }
    698698
     
    760760   iterator insert(const_iterator position, insert_const_ref_type x)
    761761   {  return this->priv_insert(position, x); }
    762762
    763    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     763   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    764764   iterator insert(const_iterator position, T &x)
    765765   { return this->insert(position, const_cast<const T &>(x)); }
    766766
  • boost/interprocess/containers/container/flat_set.hpp

     
    331331   std::pair<iterator, bool> insert(insert_const_ref_type x)
    332332   {  return priv_insert(x); }
    333333
    334    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     334   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    335335   std::pair<iterator, bool> insert(T &x)
    336336   { return this->insert(const_cast<const T &>(x)); }
    337337
     
    368368   iterator insert(const_iterator p, insert_const_ref_type x)
    369369   {  return priv_insert(p, x); }
    370370
    371    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     371   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    372372   iterator insert(const_iterator position, T &x)
    373373   { return this->insert(position, const_cast<const T &>(x)); }
    374374
     
    922922   iterator insert(insert_const_ref_type x)
    923923   {  return priv_insert(x); }
    924924
    925    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     925   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    926926   iterator insert(T &x)
    927927   { return this->insert(const_cast<const T &>(x)); }
    928928
     
    954954   iterator insert(const_iterator p, insert_const_ref_type x)
    955955   {  return priv_insert(p, x); }
    956956
    957    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     957   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    958958   iterator insert(const_iterator position, T &x)
    959959   { return this->insert(position, const_cast<const T &>(x)); }
    960960
  • boost/interprocess/containers/container/vector.hpp

     
    903903   void push_back(insert_const_ref_type x)
    904904   {  return priv_push_back(x);  }
    905905
    906    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     906   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    907907   void push_back(T &x) { push_back(const_cast<const T &>(x)); }
    908908
    909909   template<class U>
     
    10621062   iterator insert(const_iterator position, insert_const_ref_type x)
    10631063   {  return this->priv_insert(position, x); }
    10641064
    1065    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     1065   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    10661066   iterator insert(const_iterator position, T &x) { return this->insert(position, const_cast<const T &>(x)); }
    10671067
    10681068   template<class U>
  • boost/interprocess/containers/container/deque.hpp

     
    697697      this->priv_assign_dispatch(first, last, Result());
    698698   }
    699699
    700    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     700   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    701701   void push_back(T &x) { push_back(const_cast<const T &>(x)); }
    702702
    703703   template<class U>
     
    719719      }
    720720   }
    721721
    722    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     722   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    723723   void push_front(T &x) { push_front(const_cast<const T &>(x)); }
    724724
    725725   template<class U>
     
    761761         this->priv_pop_front_aux();
    762762   }
    763763
    764    #if !defined(BOOST_HAS_RVALUE_REFS) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
     764   #if defined(BOOST_NO_RVALUE_REFERENCES) && !defined(BOOST_MOVE_DOXYGEN_INVOKED)
    765765   iterator insert(const_iterator position, T &x)
    766766   { return this->insert(position, const_cast<const T &>(x)); }
    767767