Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r75293 - in branches/release: . boost boost/detail boost/unordered boost/unordered/detail libs libs/move libs/unordered libs/unordered/doc tools tools/quickbook tools/quickbook/src
From: dnljms_at_[hidden]
Date: 2011-11-03 22:31:38


Author: danieljames
Date: 2011-11-03 22:31:36 EDT (Thu, 03 Nov 2011)
New Revision: 75293
URL: http://svn.boost.org/trac/boost/changeset/75293

Log:
Merge to release several changes for 1.48.

Added:
   branches/release/libs/move/index.html
      - copied unchanged from r75141, /trunk/libs/move/index.html
Properties modified:
   branches/release/ (props changed)
   branches/release/boost/ (props changed)
   branches/release/boost/detail/ (props changed)
   branches/release/boost/unordered/ (props changed)
   branches/release/libs/ (props changed)
   branches/release/libs/unordered/ (props changed)
   branches/release/tools/ (props changed)
   branches/release/tools/quickbook/ (props changed)
Text files modified:
   branches/release/boost/detail/container_fwd.hpp | 13 +++++++++++--
   branches/release/boost/unordered/detail/allocator_helpers.hpp | 2 +-
   branches/release/boost/unordered/detail/emplace_args.hpp | 10 +++++-----
   branches/release/boost/unordered/detail/equivalent.hpp | 11 +++++++----
   branches/release/boost/unordered/detail/unique.hpp | 19 ++++++++++---------
   branches/release/libs/unordered/doc/compliance.qbk | 4 +---
   branches/release/tools/quickbook/src/doc_info_actions.cpp | 4 ++--
   7 files changed, 37 insertions(+), 26 deletions(-)

Modified: branches/release/boost/detail/container_fwd.hpp
==============================================================================
--- branches/release/boost/detail/container_fwd.hpp (original)
+++ branches/release/boost/detail/container_fwd.hpp 2011-11-03 22:31:36 EDT (Thu, 03 Nov 2011)
@@ -16,6 +16,13 @@
 #include <boost/config.hpp>
 #include <boost/detail/workaround.hpp>
 
+////////////////////////////////////////////////////////////////////////////////
+// //
+// Define BOOST_DETAIL_NO_CONTAINER_FWD if you don't want this header to //
+// forward declare standard containers. //
+// //
+////////////////////////////////////////////////////////////////////////////////
+
 #if !defined(BOOST_DETAIL_NO_CONTAINER_FWD)
 # if defined(__SGI_STL_PORT) || defined(_STLPORT_VERSION)
      // STLport
@@ -31,13 +38,15 @@
 # define BOOST_DETAIL_NO_CONTAINER_FWD
 # elif defined(__GLIBCPP__) || defined(__GLIBCXX__)
      // GNU libstdc++ 3
-# if defined(_GLIBCXX_DEBUG) || defined(_GLIBCXX_PARALLEL)
+# if defined(_GLIBCXX_DEBUG) \
+ || defined(_GLIBCXX_PARALLEL) \
+ || defined(_GLIBCXX_PROFILE)
 # define BOOST_DETAIL_NO_CONTAINER_FWD
 # endif
 # elif defined(__STL_CONFIG_H)
      // generic SGI STL
      //
- // Forward declaration seems to be okay, but it has a copule of odd
+ // Forward declaration seems to be okay, but it has a couple of odd
      // implementations.
 # define BOOST_CONTAINER_FWD_BAD_BITSET
 # if !defined(__STL_NON_TYPE_TMPL_PARAM_BUG)

Modified: branches/release/boost/unordered/detail/allocator_helpers.hpp
==============================================================================
--- branches/release/boost/unordered/detail/allocator_helpers.hpp (original)
+++ branches/release/boost/unordered/detail/allocator_helpers.hpp 2011-11-03 22:31:36 EDT (Thu, 03 Nov 2011)
@@ -108,7 +108,7 @@
         convert_from_anything(T const&);
     };
 
-#if !defined(BOOST_NO_SFINAE_EXPR) || BOOST_WORKAROUND(BOOST_MSVC, >= 1500)
+#if !defined(BOOST_NO_SFINAE_EXPR)
 
 # define BOOST_UNORDERED_HAVE_CALL_DETECTION 1
 

Modified: branches/release/boost/unordered/detail/emplace_args.hpp
==============================================================================
--- branches/release/boost/unordered/detail/emplace_args.hpp (original)
+++ branches/release/boost/unordered/detail/emplace_args.hpp 2011-11-03 22:31:36 EDT (Thu, 03 Nov 2011)
@@ -90,7 +90,7 @@
     { \
         BOOST_PP_REPEAT_##z(n, BOOST_UNORDERED_EARGS_MEMBER, _) \
         BOOST_PP_CAT(emplace_args, n) ( \
- BOOST_PP_ENUM_BINARY_PARAMS_Z(z, n, B, a) \
+ BOOST_PP_ENUM_BINARY_PARAMS_Z(z, n, Arg, a) \
         ) : BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_EARGS_INIT, _) \
         {} \
                                                                             \
@@ -112,8 +112,8 @@
 #if defined(BOOST_NO_RVALUE_REFERENCES)
 
 #define BOOST_UNORDERED_EARGS_MEMBER(z, n, _) \
- typedef BOOST_FWD_REF(BOOST_PP_CAT(A, n)) BOOST_PP_CAT(B, n); \
- BOOST_PP_CAT(B, n) BOOST_PP_CAT(a, n);
+ typedef BOOST_FWD_REF(BOOST_PP_CAT(A, n)) BOOST_PP_CAT(Arg, n); \
+ BOOST_PP_CAT(Arg, n) BOOST_PP_CAT(a, n);
 
 #define BOOST_UNORDERED_EARGS_INIT(z, n, _) \
     BOOST_PP_CAT(a, n)( \
@@ -123,8 +123,8 @@
 
 #define BOOST_UNORDERED_EARGS_MEMBER(z, n, _) \
     typedef typename boost::add_lvalue_reference<BOOST_PP_CAT(A, n)>::type \
- BOOST_PP_CAT(B, n); \
- BOOST_PP_CAT(B, n) BOOST_PP_CAT(a, n);
+ BOOST_PP_CAT(Arg, n); \
+ BOOST_PP_CAT(Arg, n) BOOST_PP_CAT(a, n);
 
 #define BOOST_UNORDERED_EARGS_INIT(z, n, _) \
     BOOST_PP_CAT(a, n)(BOOST_PP_CAT(a, n))

Modified: branches/release/boost/unordered/detail/equivalent.hpp
==============================================================================
--- branches/release/boost/unordered/detail/equivalent.hpp (original)
+++ branches/release/boost/unordered/detail/equivalent.hpp 2011-11-03 22:31:36 EDT (Thu, 03 Nov 2011)
@@ -178,6 +178,7 @@
         typedef typename table::key_type key_type;
         typedef typename table::node_constructor node_constructor;
         typedef typename table::extractor extractor;
+ typedef typename table::iterator iterator;
 
         // Constructors
 
@@ -255,13 +256,15 @@
             return count;
         }
 
- std::pair<node_pointer, node_pointer>
+ std::pair<iterator, iterator>
             equal_range(key_type const& k) const
         {
             node_pointer n = this->find_node(k);
- return std::make_pair(n,
- n ? static_cast<node_pointer>(
- static_cast<node_pointer>(n->group_prev_)->next_) : n);
+ return std::make_pair(
+ iterator(n), iterator(n ?
+ static_cast<node_pointer>(
+ static_cast<node_pointer>(n->group_prev_)->next_) :
+ n));
         }
 
         // Equality

Modified: branches/release/boost/unordered/detail/unique.hpp
==============================================================================
--- branches/release/boost/unordered/detail/unique.hpp (original)
+++ branches/release/boost/unordered/detail/unique.hpp 2011-11-03 22:31:36 EDT (Thu, 03 Nov 2011)
@@ -174,8 +174,9 @@
         typedef typename table::key_type key_type;
         typedef typename table::node_constructor node_constructor;
         typedef typename table::extractor extractor;
+ typedef typename table::iterator iterator;
 
- typedef std::pair<node_pointer, bool> emplace_return;
+ typedef std::pair<iterator, bool> emplace_return;
 
         // Constructors
 
@@ -253,12 +254,12 @@
                 std::out_of_range("Unable to find key in unordered_map."));
         }
 
- std::pair<node_pointer, node_pointer>
+ std::pair<iterator, iterator>
             equal_range(key_type const& k) const
         {
             node_pointer n = this->find_node(k);
- return std::make_pair(n,
- n ? static_cast<node_pointer>(n->next_) : n);
+ return std::make_pair(iterator(n),
+ iterator(n ? static_cast<node_pointer>(n->next_) : n));
         }
 
         // equals
@@ -354,7 +355,7 @@
                 boost::unordered::detail::please_ignore_this_overload> const&)
         {
             BOOST_ASSERT(false);
- return emplace_return(this->begin(), false);
+ return emplace_return(iterator(this->begin()), false);
         }
 #endif
 
@@ -389,7 +390,7 @@
             std::size_t hash = this->hash_function()(k);
             node_pointer pos = this->find_node(hash, k);
     
- if (pos) return emplace_return(pos, false);
+ if (pos) return emplace_return(iterator(pos), false);
     
             // Create the node before rehashing in case it throws an
             // exception (need strong safety in such a case).
@@ -400,7 +401,7 @@
             // reserve has basic exception safety if the hash function
             // throws, strong otherwise.
             this->reserve_for_insert(this->size_ + 1);
- return emplace_return(this->add_node(a, hash), true);
+ return emplace_return(iterator(this->add_node(a, hash)), true);
         }
 
         emplace_return emplace_impl_with_node(node_constructor& a)
@@ -409,12 +410,12 @@
             std::size_t hash = this->hash_function()(k);
             node_pointer pos = this->find_node(hash, k);
 
- if (pos) return emplace_return(pos, false);
+ if (pos) return emplace_return(iterator(pos), false);
 
             // reserve has basic exception safety if the hash function
             // throws, strong otherwise.
             this->reserve_for_insert(this->size_ + 1);
- return emplace_return(this->add_node(a, hash), true);
+ return emplace_return(iterator(this->add_node(a, hash)), true);
         }
 
         template <BOOST_UNORDERED_EMPLACE_TEMPLATE>

Modified: branches/release/libs/unordered/doc/compliance.qbk
==============================================================================
--- branches/release/libs/unordered/doc/compliance.qbk (original)
+++ branches/release/libs/unordered/doc/compliance.qbk 2011-11-03 22:31:36 EDT (Thu, 03 Nov 2011)
@@ -36,9 +36,7 @@
 member function detection so that the fallback is used whenever the
 member function call is not well formed.
 This requires support for SFINAE expressions, which are available on
-GCC from version 4.4 and Clang. They aren't supported by
-Visual C++ 2008/2010, but with a bit of hacking it's possible to support
-certain use cases.
+GCC from version 4.4 and Clang.
 
 On other compilers, there's just a test to see if the allocator has
 a member, but no check that it can be called. So rather than using a

Modified: branches/release/tools/quickbook/src/doc_info_actions.cpp
==============================================================================
--- branches/release/tools/quickbook/src/doc_info_actions.cpp (original)
+++ branches/release/tools/quickbook/src/doc_info_actions.cpp 2011-11-03 22:31:36 EDT (Thu, 03 Nov 2011)
@@ -171,7 +171,7 @@
             qbk_major_version = 1;
             qbk_minor_version = 1;
             detail::outwarn(actions.filename,1)
- << "Warning: Quickbook version undefined. "
+ << "Quickbook version undefined. "
                 "Version 1.1 is assumed" << std::endl;
         }
         else
@@ -410,7 +410,7 @@
         // Close any open sections.
         if (actions.section_level != 0) {
             detail::outwarn(actions.filename)
- << "Warning missing [endsect] detected at end of file."
+ << "Missing [endsect] detected at end of file."
                 << std::endl;
 
             while(actions.section_level > 0) {


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk