Boost logo

Boost-Commit :

From: eric_at_[hidden]
Date: 2007-12-08 21:38:16


Author: eric_niebler
Date: 2007-12-08 21:38:15 EST (Sat, 08 Dec 2007)
New Revision: 41915
URL: http://svn.boost.org/trac/boost/changeset/41915

Log:
Merged revisions 41776-41815 via svnmerge from
https://svn.boost.org/svn/boost/trunk

........
  r41778 | bgubenko | 2007-12-06 02:47:52 -0800 (Thu, 06 Dec 2007) | 1 line
  
  compute 'result' in to_ulong() as it is done in Boost 1.34
........
  r41788 | vladimir_prus | 2007-12-06 08:00:38 -0800 (Thu, 06 Dec 2007) | 2 lines
  
  Add Google Analytics tracking code for the uploaded docs.
........
  r41789 | vladimir_prus | 2007-12-06 08:12:01 -0800 (Thu, 06 Dec 2007) | 3 lines
  
  Fix search for html files. Put packages where
  beta.boost.org can fetch them.
........
  r41791 | vladimir_prus | 2007-12-06 08:23:39 -0800 (Thu, 06 Dec 2007) | 1 line
  
  Fix quoting
........
  r41795 | dgregor | 2007-12-06 09:17:38 -0800 (Thu, 06 Dec 2007) | 4 lines
  
  Bump VC++ version check to continue applying VC-specific workaround for
  Visual C++ 9.0. Fixes #1499
........
  r41798 | dgregor | 2007-12-06 10:39:06 -0800 (Thu, 06 Dec 2007) | 3 lines
  
  Disable more Visual C++ warnings in Function headers. Fixes #1416
........
  r41801 | guwi17 | 2007-12-06 11:21:31 -0800 (Thu, 06 Dec 2007) | 3 lines
  
  - fix and close #1502
  - the return types were not correct: there was A instead of indirect_array<A>
........
  r41802 | dgregor | 2007-12-06 11:22:06 -0800 (Thu, 06 Dec 2007) | 4 lines
  
  Workaround for MPICH to properly deal with SEEK_* constants.
  Fixes #1486
........
  r41805 | t_schwinger | 2007-12-06 13:25:10 -0800 (Thu, 06 Dec 2007) | 3 lines
  
  annotates on msvc 7.1 overload selection bug in function_types example
........

Properties modified:
   branches/proto/v3/ (props changed)
Text files modified:
   branches/proto/v3/boost/dynamic_bitset/dynamic_bitset.hpp | 3 ++-
   branches/proto/v3/boost/function/function_base.hpp | 1 +
   branches/proto/v3/boost/function/function_template.hpp | 9 +++++++++
   branches/proto/v3/boost/mpi/config.hpp | 4 ++++
   branches/proto/v3/boost/mpi/datatype.hpp | 6 ++++++
   branches/proto/v3/boost/mpi/detail/mpi_datatype_primitive.hpp | 2 +-
   branches/proto/v3/boost/mpi/detail/packed_iprimitive.hpp | 2 +-
   branches/proto/v3/boost/mpi/detail/packed_oprimitive.hpp | 2 +-
   branches/proto/v3/boost/numeric/ublas/expression_types.hpp | 32 ++++++++++++++++----------------
   branches/proto/v3/boost/signals/detail/named_slot_map.hpp | 2 +-
   branches/proto/v3/libs/signals/src/named_slot_map.cpp | 2 +-
   branches/proto/v3/status/explicit-failures-markup.xml | 9 +++++++++
   branches/proto/v3/tools/build/v2/roll.sh | 13 ++++++++++++-
   13 files changed, 64 insertions(+), 23 deletions(-)

Modified: branches/proto/v3/boost/dynamic_bitset/dynamic_bitset.hpp
==============================================================================
--- branches/proto/v3/boost/dynamic_bitset/dynamic_bitset.hpp (original)
+++ branches/proto/v3/boost/dynamic_bitset/dynamic_bitset.hpp 2007-12-08 21:38:15 EST (Sat, 08 Dec 2007)
@@ -1087,7 +1087,8 @@
 
     assert((size_type)bits_per_block * i < (size_type)ulong_width);
 
- result |= (m_bits[i] << (bits_per_block * i));
+ unsigned long piece = m_bits[i];
+ result |= (piece << (bits_per_block * i));
   }
 
   return result;

Modified: branches/proto/v3/boost/function/function_base.hpp
==============================================================================
--- branches/proto/v3/boost/function/function_base.hpp (original)
+++ branches/proto/v3/boost/function/function_base.hpp 2007-12-08 21:38:15 EST (Sat, 08 Dec 2007)
@@ -33,6 +33,7 @@
 #if defined(BOOST_MSVC)
 # pragma warning( push )
 # pragma warning( disable : 4793 ) // complaint about native code generation
+# pragma warning( disable : 4127 ) // "conditional expression is constant"
 #endif
 
 // Define BOOST_FUNCTION_STD_NS to the namespace that contains type_info.

Modified: branches/proto/v3/boost/function/function_template.hpp
==============================================================================
--- branches/proto/v3/boost/function/function_template.hpp (original)
+++ branches/proto/v3/boost/function/function_template.hpp 2007-12-08 21:38:15 EST (Sat, 08 Dec 2007)
@@ -11,6 +11,11 @@
 // protection.
 #include <boost/function/detail/prologue.hpp>
 
+#if defined(BOOST_MSVC)
+# pragma warning( push )
+# pragma warning( disable : 4127 ) // "conditional expression is constant"
+#endif
+
 #define BOOST_FUNCTION_TEMPLATE_PARMS BOOST_PP_ENUM_PARAMS(BOOST_FUNCTION_NUM_ARGS, typename T)
 
 #define BOOST_FUNCTION_TEMPLATE_ARGS BOOST_PP_ENUM_PARAMS(BOOST_FUNCTION_NUM_ARGS, T)
@@ -958,3 +963,7 @@
 #undef BOOST_FUNCTION_ARG_TYPES
 #undef BOOST_FUNCTION_VOID_RETURN_TYPE
 #undef BOOST_FUNCTION_RETURN
+
+#if defined(BOOST_MSVC)
+# pragma warning( pop )
+#endif

Modified: branches/proto/v3/boost/mpi/config.hpp
==============================================================================
--- branches/proto/v3/boost/mpi/config.hpp (original)
+++ branches/proto/v3/boost/mpi/config.hpp 2007-12-08 21:38:15 EST (Sat, 08 Dec 2007)
@@ -13,6 +13,10 @@
 #ifndef BOOST_MPI_CONFIG_HPP
 #define BOOST_MPI_CONFIG_HPP
 
+/* Force MPICH not to define SEEK_SET, SEEK_CUR, and SEEK_END, which
+ conflict with the versions in <stdio.h> and <cstdio>. */
+#define MPICH_IGNORE_CXX_SEEK 1
+
 #include <mpi.h>
 #include <boost/config.hpp>
 

Modified: branches/proto/v3/boost/mpi/datatype.hpp
==============================================================================
--- branches/proto/v3/boost/mpi/datatype.hpp (original)
+++ branches/proto/v3/boost/mpi/datatype.hpp 2007-12-08 21:38:15 EST (Sat, 08 Dec 2007)
@@ -25,6 +25,7 @@
 #include <boost/mpl/or.hpp>
 #include <boost/mpi/detail/mpi_datatype_cache.hpp>
 #include <boost/mpl/assert.hpp>
+#include <utility> // for std::pair
 
 namespace boost { namespace mpi {
 
@@ -289,6 +290,11 @@
   : boost::mpl::bool_<true>
 {};
 
+/// INTERNAL ONLY
+template<typename T, typename U>
+struct is_mpi_datatype<std::pair<T, U> >
+ : mpl::and_<is_mpi_datatype<T>, is_mpi_datatype<U> > { };
+
 } } // end namespace boost::mpi
 
 #endif // BOOST_MPI_MPI_DATATYPE_HPP

Modified: branches/proto/v3/boost/mpi/detail/mpi_datatype_primitive.hpp
==============================================================================
--- branches/proto/v3/boost/mpi/detail/mpi_datatype_primitive.hpp (original)
+++ branches/proto/v3/boost/mpi/detail/mpi_datatype_primitive.hpp 2007-12-08 21:38:15 EST (Sat, 08 Dec 2007)
@@ -9,7 +9,7 @@
 #ifndef BOOST_MPI_DETAIL_MPI_DATATYPE_OPRIMITIVE_HPP
 #define BOOST_MPI_DETAIL_MPI_DATATYPE_OPRIMITIVE_HPP
 
-#include <mpi.h>
+#include <boost/mpi/config.hpp>
 #include <cstddef> // size_t
 
 #include <boost/config.hpp>

Modified: branches/proto/v3/boost/mpi/detail/packed_iprimitive.hpp
==============================================================================
--- branches/proto/v3/boost/mpi/detail/packed_iprimitive.hpp (original)
+++ branches/proto/v3/boost/mpi/detail/packed_iprimitive.hpp 2007-12-08 21:38:15 EST (Sat, 08 Dec 2007)
@@ -9,7 +9,7 @@
 #ifndef BOOST_MPI_PACKED_IPRIMITIVE_HPP
 #define BOOST_MPI_PACKED_IPRIMITIVE_HPP
 
-#include <mpi.h>
+#include <boost/mpi/config.hpp>
 #include <iostream>
 #include <cstddef> // size_t
 #include <boost/config.hpp>

Modified: branches/proto/v3/boost/mpi/detail/packed_oprimitive.hpp
==============================================================================
--- branches/proto/v3/boost/mpi/detail/packed_oprimitive.hpp (original)
+++ branches/proto/v3/boost/mpi/detail/packed_oprimitive.hpp 2007-12-08 21:38:15 EST (Sat, 08 Dec 2007)
@@ -9,7 +9,7 @@
 #ifndef BOOST_MPI_PACKED_OPRIMITIVE_HPP
 #define BOOST_MPI_PACKED_OPRIMITIVE_HPP
 
-#include <mpi.h>
+#include <boost/mpi/config.hpp>
 #include <iostream>
 #include <cstddef> // size_t
 #include <boost/config.hpp>

Modified: branches/proto/v3/boost/numeric/ublas/expression_types.hpp
==============================================================================
--- branches/proto/v3/boost/numeric/ublas/expression_types.hpp (original)
+++ branches/proto/v3/boost/numeric/ublas/expression_types.hpp 2007-12-08 21:38:15 EST (Sat, 08 Dec 2007)
@@ -217,13 +217,13 @@
         }
         template<class A>
         BOOST_UBLAS_INLINE
- const vector_indirect<const E, A> operator () (const indirect_array<A> &ia) const {
- return vector_indirect<const E, A> (operator () (), ia);
+ const vector_indirect<const E, indirect_array<A> > operator () (const indirect_array<A> &ia) const {
+ return vector_indirect<const E, indirect_array<A> > (operator () (), ia);
         }
         template<class A>
         BOOST_UBLAS_INLINE
- vector_indirect<E, A> operator () (const indirect_array<A> &ia) {
- return vector_indirect<E, A> (operator () (), ia);
+ vector_indirect<E, indirect_array<A> > operator () (const indirect_array<A> &ia) {
+ return vector_indirect<E, indirect_array<A> > (operator () (), ia);
         }
 
         BOOST_UBLAS_INLINE
@@ -244,13 +244,13 @@
         }
         template<class A>
         BOOST_UBLAS_INLINE
- const vector_indirect<const E, A> project (const indirect_array<A> &ia) const {
- return vector_indirect<const E, A> (operator () (), ia);
+ const vector_indirect<const E, indirect_array<A> > project (const indirect_array<A> &ia) const {
+ return vector_indirect<const E, indirect_array<A> > (operator () (), ia);
         }
         template<class A>
         BOOST_UBLAS_INLINE
- vector_indirect<E, A> project (const indirect_array<A> &ia) {
- return vector_indirect<E, A> (operator () (), ia);
+ vector_indirect<E, indirect_array<A> > project (const indirect_array<A> &ia) {
+ return vector_indirect<E, indirect_array<A> > (operator () (), ia);
         }
 #endif
     };
@@ -371,13 +371,13 @@
         }
         template<class A>
         BOOST_UBLAS_INLINE
- const matrix_indirect<const E, A> operator () (const indirect_array<A> &ia1, const indirect_array<A> &ia2) const {
- return matrix_indirect<const E, A> (operator () (), ia1, ia2);
+ const matrix_indirect<const E, indirect_array<A> > operator () (const indirect_array<A> &ia1, const indirect_array<A> &ia2) const {
+ return matrix_indirect<const E, indirect_array<A> > (operator () (), ia1, ia2);
         }
         template<class A>
         BOOST_UBLAS_INLINE
- matrix_indirect<E, A> operator () (const indirect_array<A> &ia1, const indirect_array<A> &ia2) {
- return matrix_indirect<E, A> (operator () (), ia1, ia2);
+ matrix_indirect<E, indirect_array<A> > operator () (const indirect_array<A> &ia1, const indirect_array<A> &ia2) {
+ return matrix_indirect<E, indirect_array<A> > (operator () (), ia1, ia2);
         }
 
         BOOST_UBLAS_INLINE
@@ -398,13 +398,13 @@
         }
         template<class A>
         BOOST_UBLAS_INLINE
- const matrix_indirect<const E, A> project (const indirect_array<A> &ia1, const indirect_array<A> &ia2) const {
- return matrix_indirect<const E, A> (operator () (), ia1, ia2);
+ const matrix_indirect<const E, indirect_array<A> > project (const indirect_array<A> &ia1, const indirect_array<A> &ia2) const {
+ return matrix_indirect<const E, indirect_array<A> > (operator () (), ia1, ia2);
         }
         template<class A>
         BOOST_UBLAS_INLINE
- matrix_indirect<E, A> project (const indirect_array<A> &ia1, const indirect_array<A> &ia2) {
- return matrix_indirect<E, A> (operator () (), ia1, ia2);
+ matrix_indirect<E, indirect_array<A> > project (const indirect_array<A> &ia1, const indirect_array<A> &ia2) {
+ return matrix_indirect<E, indirect_array<A> > (operator () (), ia1, ia2);
         }
 #endif
     };

Modified: branches/proto/v3/boost/signals/detail/named_slot_map.hpp
==============================================================================
--- branches/proto/v3/boost/signals/detail/named_slot_map.hpp (original)
+++ branches/proto/v3/boost/signals/detail/named_slot_map.hpp 2007-12-08 21:38:15 EST (Sat, 08 Dec 2007)
@@ -127,7 +127,7 @@
         || slot_ == other.slot_));
   }
 
-#if BOOST_WORKAROUND(_MSC_VER, <= 1400)
+#if BOOST_WORKAROUND(_MSC_VER, <= 1500)
   void decrement();
   void advance(difference_type);
 #endif

Modified: branches/proto/v3/libs/signals/src/named_slot_map.cpp
==============================================================================
--- branches/proto/v3/libs/signals/src/named_slot_map.cpp (original)
+++ branches/proto/v3/libs/signals/src/named_slot_map.cpp 2007-12-08 21:38:15 EST (Sat, 08 Dec 2007)
@@ -24,7 +24,7 @@
 typedef slot_container_type::const_iterator const_group_iterator;
 
 
-#if BOOST_WORKAROUND(_MSC_VER, <= 1400)
+#if BOOST_WORKAROUND(_MSC_VER, <= 1500)
 void named_slot_map_iterator::decrement() { assert(false); }
 void named_slot_map_iterator::advance(difference_type) { assert(false); }
 #endif

Modified: branches/proto/v3/status/explicit-failures-markup.xml
==============================================================================
--- branches/proto/v3/status/explicit-failures-markup.xml (original)
+++ branches/proto/v3/status/explicit-failures-markup.xml 2007-12-08 21:38:15 EST (Sat, 08 Dec 2007)
@@ -1496,6 +1496,7 @@
             <toolset name="intel*"/>
             <toolset name="msvc-*_64"/>
             <toolset name="msvc-*wm*"/>
+ <toolset name="pathscale-*"/>
             <note author="Tobias Schwinger">
               Not all compilers/platforms implement nonstandard calling conventions.
               <hr/>
@@ -1513,10 +1514,18 @@
             <toolset name="intel*"/>
             <toolset name="msvc-*_64"/>
             <toolset name="msvc-*wm*"/>
+ <toolset name="pathscale-*"/>
             <note author="Tobias Schwinger">
               Not all compilers/platforms implement nonstandard calling conventions.
             </note>
         </mark-expected-failures>
+ <mark-expected-failures>
+ <test name="interfaces_example"/>
+ <toolset name="msvc-7.1"/>
+ <note author="Tobias Schwinger">
+ Overload selection does not work in some assignment contexts with this compiler.
+ </note>
+ </mark-expected-failures>
     </library>
 
     <!-- functional/hash -->

Modified: branches/proto/v3/tools/build/v2/roll.sh
==============================================================================
--- branches/proto/v3/tools/build/v2/roll.sh (original)
+++ branches/proto/v3/tools/build/v2/roll.sh 2007-12-08 21:38:15 EST (Sat, 08 Dec 2007)
@@ -52,10 +52,21 @@
 rm roll.sh
 chmod a+x jam_src/build.bat
 cd .. && zip -r boost-build.zip boost-build && tar --bzip2 -cf boost-build.tar.bz2 boost-build
+# Copy packages to a location where they are grabbed for beta.boost.org
+cp boost-build.zip boost-build.tar.bz2 ~/public_html/boost_build_nightly
 cd boost-build
 
 chmod -R u+w *
 # Upload docs to sourceforge
-perl -pi -e 's%<!-- sf logo -->%SourceForge.net Logo%' index.html doc/*.html
+x=`cat <<EOF
+<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+_uacct = "UA-2917240-2";
+urchinTracker();
+</script>
+EOF`
+echo $x
+perl -pi -e "s|</body>|$x</body>|" `find doc -name '*.html'`
 scp -r doc example boost_build.png *.html hacking.txt vladimir_prus_at_[hidden]:/home/groups/b/bo/boost/htdocs/boost-build2
 scp ../userman.pdf vladimir_prus_at_[hidden]:/home/groups/b/bo/boost/htdocs/boost-build2/doc


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