$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
From: john_at_[hidden]
Date: 2008-04-21 08:06:06
Author: johnmaddock
Date: 2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
New Revision: 44692
URL: http://svn.boost.org/trac/boost/changeset/44692
Log:
Changed macro BOOST_PARTIAL_SPECIALIZATION_EXPLICIT_ARGS to BOOST_NO_PARTIAL_SPECIALIZATION_DEFAULT_ARGS.
Changed <utility> to <boost/config/no_tr1/utility.hpp> in order to prevent cyclic dependencies between Fusion Tuples and TR1.
Text files modified: 
   trunk/boost/config/compiler/vacpp.hpp                              |     2 +-                                      
   trunk/boost/config/suffix.hpp                                      |     9 +++++++++                               
   trunk/boost/fusion/adapted/array/detail/category_of_impl.hpp       |     2 +-                                      
   trunk/boost/fusion/adapted/array/tag_of.hpp                        |     2 +-                                      
   trunk/boost/fusion/adapted/boost_tuple/tag_of.hpp                  |     4 ++--                                    
   trunk/boost/fusion/adapted/std_pair.hpp                            |     4 ++--                                    
   trunk/boost/fusion/adapted/std_pair/detail/category_of_impl.hpp    |     2 +-                                      
   trunk/boost/fusion/adapted/std_pair/std_pair_iterator.hpp          |     2 +-                                      
   trunk/boost/fusion/adapted/std_pair/tag_of.hpp                     |     2 +-                                      
   trunk/boost/fusion/adapted/struct/adapt_assoc_struct.hpp           |     2 +-                                      
   trunk/boost/fusion/adapted/struct/adapt_struct.hpp                 |     2 +-                                      
   trunk/boost/fusion/adapted/struct/detail/category_of_impl.hpp      |     2 +-                                      
   trunk/boost/fusion/adapted/struct/struct_iterator.hpp              |     2 +-                                      
   trunk/boost/fusion/algorithm/transformation/transform.hpp          |     2 +-                                      
   trunk/boost/fusion/algorithm/transformation/zip.hpp                |     2 +-                                      
   trunk/boost/fusion/container/generation/deque_tie.hpp              |     2 +-                                      
   trunk/boost/fusion/container/generation/list_tie.hpp               |     2 +-                                      
   trunk/boost/fusion/container/generation/make_deque.hpp             |     2 +-                                      
   trunk/boost/fusion/container/generation/make_list.hpp              |     2 +-                                      
   trunk/boost/fusion/container/generation/make_map.hpp               |     2 +-                                      
   trunk/boost/fusion/container/generation/make_set.hpp               |     2 +-                                      
   trunk/boost/fusion/container/generation/make_vector.hpp            |     2 +-                                      
   trunk/boost/fusion/container/generation/map_tie.hpp                |     2 +-                                      
   trunk/boost/fusion/container/generation/vector_tie.hpp             |     2 +-                                      
   trunk/boost/fusion/support/tag_of.hpp                              |     2 +-                                      
   trunk/boost/fusion/view/transform_view/transform_view.hpp          |     2 +-                                      
   trunk/libs/config/doc/html/boost_config/boost_macro_reference.html |    18 ++++++++++++++++++                      
   trunk/libs/config/doc/html/index.html                              |     2 +-                                      
   trunk/libs/config/doc/macro_reference.qbk                          |     4 ++++                                    
   trunk/libs/config/test/all/Jamfile.v2                              |     5 ++++-                                   
   trunk/libs/config/test/config_info.cpp                             |     4 ++++                                    
   trunk/libs/config/test/config_test.cpp                             |    12 +++++++++++-                            
   32 files changed, 78 insertions(+), 30 deletions(-)
Modified: trunk/boost/config/compiler/vacpp.hpp
==============================================================================
--- trunk/boost/config/compiler/vacpp.hpp	(original)
+++ trunk/boost/config/compiler/vacpp.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -53,7 +53,7 @@
 #endif
 
 // Some versions of the compiler have issues with default arguments on partial specializations
-#define BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS
+#define BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS
 
 
 
Modified: trunk/boost/config/suffix.hpp
==============================================================================
--- trunk/boost/config/suffix.hpp	(original)
+++ trunk/boost/config/suffix.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -121,6 +121,15 @@
 #  endif
 
 //
+// Without partial specialization, partial 
+// specialization with default args won't work either:
+//
+#  if defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) \
+      && !defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
+#     define BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS
+#  endif
+
+//
 // Without member template support, we can't have template constructors
 // in the standard library either:
 //
Modified: trunk/boost/fusion/adapted/array/detail/category_of_impl.hpp
==============================================================================
--- trunk/boost/fusion/adapted/array/detail/category_of_impl.hpp	(original)
+++ trunk/boost/fusion/adapted/array/detail/category_of_impl.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -8,7 +8,7 @@
 #if !defined(BOOST_FUSION_CATEGORY_OF_IMPL_27122005_1044)
 #define BOOST_FUSION_CATEGORY_OF_IMPL_27122005_1044
 
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 namespace boost { namespace fusion { 
 
Modified: trunk/boost/fusion/adapted/array/tag_of.hpp
==============================================================================
--- trunk/boost/fusion/adapted/array/tag_of.hpp	(original)
+++ trunk/boost/fusion/adapted/array/tag_of.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -25,7 +25,7 @@
     namespace traits
     {
         template<typename T, std::size_t N>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         struct tag_of<boost::array<T,N>, void >
 #else
         struct tag_of<boost::array<T,N> >
Modified: trunk/boost/fusion/adapted/boost_tuple/tag_of.hpp
==============================================================================
--- trunk/boost/fusion/adapted/boost_tuple/tag_of.hpp	(original)
+++ trunk/boost/fusion/adapted/boost_tuple/tag_of.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -33,7 +33,7 @@
             class T0, class T1, class T2, class T3, class T4, 
             class T5, class T6, class T7, class T8, class T9
         >
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         struct tag_of<tuples::tuple<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9>, void >
 #else
         struct tag_of<tuples::tuple<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> >
@@ -43,7 +43,7 @@
         };
 
         template <class Head, class Tail>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         struct tag_of<tuples::cons<Head, Tail>, void >
 #else
         struct tag_of<tuples::cons<Head, Tail> >
Modified: trunk/boost/fusion/adapted/std_pair.hpp
==============================================================================
--- trunk/boost/fusion/adapted/std_pair.hpp	(original)
+++ trunk/boost/fusion/adapted/std_pair.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -11,7 +11,7 @@
 #include <boost/fusion/support/tag_of_fwd.hpp>
 #include <boost/fusion/adapted/struct.hpp>
 #include <boost/mpl/int.hpp>
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 namespace boost { namespace fusion
 {
@@ -20,7 +20,7 @@
     namespace traits
     {
         template <typename T1, typename T2>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         struct tag_of<std::pair<T1, T2>, void >
 #else
         struct tag_of<std::pair<T1, T2> >
Modified: trunk/boost/fusion/adapted/std_pair/detail/category_of_impl.hpp
==============================================================================
--- trunk/boost/fusion/adapted/std_pair/detail/category_of_impl.hpp	(original)
+++ trunk/boost/fusion/adapted/std_pair/detail/category_of_impl.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -8,7 +8,7 @@
 #if !defined(BOOST_FUSION_CATEGORY_OF_IMPL_24122005_1731)
 #define BOOST_FUSION_CATEGORY_OF_IMPL_24122005_1731
 
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 namespace boost { namespace fusion { 
 
Modified: trunk/boost/fusion/adapted/std_pair/std_pair_iterator.hpp
==============================================================================
--- trunk/boost/fusion/adapted/std_pair/std_pair_iterator.hpp	(original)
+++ trunk/boost/fusion/adapted/std_pair/std_pair_iterator.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -14,7 +14,7 @@
 #include <boost/mpl/if.hpp>
 #include <boost/mpl/int.hpp>
 #include <boost/mpl/minus.hpp>
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 namespace boost { namespace fusion
 {
Modified: trunk/boost/fusion/adapted/std_pair/tag_of.hpp
==============================================================================
--- trunk/boost/fusion/adapted/std_pair/tag_of.hpp	(original)
+++ trunk/boost/fusion/adapted/std_pair/tag_of.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -10,7 +10,7 @@
 
 #include <boost/fusion/support/tag_of_fwd.hpp>
 
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 namespace boost { namespace fusion {
 
Modified: trunk/boost/fusion/adapted/struct/adapt_assoc_struct.hpp
==============================================================================
--- trunk/boost/fusion/adapted/struct/adapt_assoc_struct.hpp	(original)
+++ trunk/boost/fusion/adapted/struct/adapt_assoc_struct.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -31,7 +31,7 @@
 #include <boost/preprocessor/repetition/enum_params.hpp>
 #include <boost/preprocessor/cat.hpp>
 #include <boost/mpl/int.hpp>
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 namespace boost { namespace fusion { namespace extension {
     template<typename Struct, typename Key>
Modified: trunk/boost/fusion/adapted/struct/adapt_struct.hpp
==============================================================================
--- trunk/boost/fusion/adapted/struct/adapt_struct.hpp	(original)
+++ trunk/boost/fusion/adapted/struct/adapt_struct.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -27,7 +27,7 @@
 #include <boost/preprocessor/repetition/enum_params.hpp>
 #include <boost/preprocessor/cat.hpp>
 #include <boost/mpl/int.hpp>
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 #define BOOST_FUSION_ADAPT_STRUCT(name, bseq)                                   \
     BOOST_FUSION_ADAPT_STRUCT_I(                                                \
Modified: trunk/boost/fusion/adapted/struct/detail/category_of_impl.hpp
==============================================================================
--- trunk/boost/fusion/adapted/struct/detail/category_of_impl.hpp	(original)
+++ trunk/boost/fusion/adapted/struct/detail/category_of_impl.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -8,7 +8,7 @@
 #if !defined(BOOST_FUSION_CATEGORY_OF_IMPL_24122005_1731)
 #define BOOST_FUSION_CATEGORY_OF_IMPL_24122005_1731
 
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 namespace boost { namespace fusion
 {
Modified: trunk/boost/fusion/adapted/struct/struct_iterator.hpp
==============================================================================
--- trunk/boost/fusion/adapted/struct/struct_iterator.hpp	(original)
+++ trunk/boost/fusion/adapted/struct/struct_iterator.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -17,7 +17,7 @@
 #include <boost/mpl/if.hpp>
 #include <boost/mpl/int.hpp>
 #include <boost/mpl/minus.hpp>
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 namespace boost { namespace fusion
 {
Modified: trunk/boost/fusion/algorithm/transformation/transform.hpp
==============================================================================
--- trunk/boost/fusion/algorithm/transformation/transform.hpp	(original)
+++ trunk/boost/fusion/algorithm/transformation/transform.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -22,7 +22,7 @@
         };
 
         template <typename Sequence, typename F>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         struct transform<Sequence, F, void_>
 #else
         struct transform<Sequence, F>
Modified: trunk/boost/fusion/algorithm/transformation/zip.hpp
==============================================================================
--- trunk/boost/fusion/algorithm/transformation/zip.hpp	(original)
+++ trunk/boost/fusion/algorithm/transformation/zip.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -54,7 +54,7 @@
     namespace result_of
     {
         template< BOOST_PP_ENUM_PARAMS(ZIP_ITERATION, typename T) >
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         #define TEXT(z, n, text) , text
         struct zip< BOOST_PP_ENUM_PARAMS(ZIP_ITERATION, T) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(ZIP_ITERATION), FUSION_MAX_ZIP_SEQUENCES, TEXT, void_) >
         #undef TEXT
Modified: trunk/boost/fusion/container/generation/deque_tie.hpp
==============================================================================
--- trunk/boost/fusion/container/generation/deque_tie.hpp	(original)
+++ trunk/boost/fusion/container/generation/deque_tie.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -54,7 +54,7 @@
     namespace result_of
     {
         template <BOOST_PP_ENUM_PARAMS(N, typename T)>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         #define TEXT(z, n, text) , text
         struct deque_tie< BOOST_PP_ENUM_PARAMS(N, T) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(N), FUSION_MAX_DEQUE_SIZE, TEXT, void_) >
         #undef TEXT
Modified: trunk/boost/fusion/container/generation/list_tie.hpp
==============================================================================
--- trunk/boost/fusion/container/generation/list_tie.hpp	(original)
+++ trunk/boost/fusion/container/generation/list_tie.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -54,7 +54,7 @@
     namespace result_of
     {
         template <BOOST_PP_ENUM_PARAMS(N, typename T)>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         #define TEXT(z, n, text) , text
         struct list_tie< BOOST_PP_ENUM_PARAMS(N, T) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(N), FUSION_MAX_LIST_SIZE, TEXT, void_) >
         #undef TEXT
Modified: trunk/boost/fusion/container/generation/make_deque.hpp
==============================================================================
--- trunk/boost/fusion/container/generation/make_deque.hpp	(original)
+++ trunk/boost/fusion/container/generation/make_deque.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -73,7 +73,7 @@
     namespace result_of
     {
         template <BOOST_PP_ENUM_PARAMS(N, typename T)>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         #define TEXT(z, n, text) , text
         struct make_deque< BOOST_PP_ENUM_PARAMS(N, T) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(N), FUSION_MAX_DEQUE_SIZE, TEXT, void_) >
         #undef TEXT
Modified: trunk/boost/fusion/container/generation/make_list.hpp
==============================================================================
--- trunk/boost/fusion/container/generation/make_list.hpp	(original)
+++ trunk/boost/fusion/container/generation/make_list.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -66,7 +66,7 @@
     namespace result_of
     {
         template <BOOST_PP_ENUM_PARAMS(N, typename T)>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         #define TEXT(z, n, text) , text
         struct make_list< BOOST_PP_ENUM_PARAMS(N, T) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(N), FUSION_MAX_LIST_SIZE, TEXT, void_) >
         #undef TEXT
Modified: trunk/boost/fusion/container/generation/make_map.hpp
==============================================================================
--- trunk/boost/fusion/container/generation/make_map.hpp	(original)
+++ trunk/boost/fusion/container/generation/make_map.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -78,7 +78,7 @@
             BOOST_PP_ENUM_PARAMS(N, typename K)
           , BOOST_PP_ENUM_PARAMS(N, typename D)
         >
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
          #define TEXT(z, n, text) , text
          struct make_map<BOOST_PP_ENUM_PARAMS(N, K), BOOST_PP_ENUM_PARAMS(N, D) BOOST_PP_REPEAT_FROM_TO(N, FUSION_MAX_VECTOR_SIZE, TEXT, void_) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(N), FUSION_MAX_VECTOR_SIZE, TEXT, void_)>
          #undef TEXT
Modified: trunk/boost/fusion/container/generation/make_set.hpp
==============================================================================
--- trunk/boost/fusion/container/generation/make_set.hpp	(original)
+++ trunk/boost/fusion/container/generation/make_set.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -68,7 +68,7 @@
     namespace result_of
     {
         template <BOOST_PP_ENUM_PARAMS(N, typename T)>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         #define TEXT(z, n, text) , text
         struct make_set< BOOST_PP_ENUM_PARAMS(N, T) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(N), FUSION_MAX_SET_SIZE, TEXT, void_) >
         #undef TEXT
Modified: trunk/boost/fusion/container/generation/make_vector.hpp
==============================================================================
--- trunk/boost/fusion/container/generation/make_vector.hpp	(original)
+++ trunk/boost/fusion/container/generation/make_vector.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -66,7 +66,7 @@
     namespace result_of
     {
         template <BOOST_PP_ENUM_PARAMS(N, typename T)>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         #define TEXT(z, n, text) , text
         struct make_vector< BOOST_PP_ENUM_PARAMS(N, T) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(N), FUSION_MAX_VECTOR_SIZE, TEXT, void_) >
         #undef TEXT
Modified: trunk/boost/fusion/container/generation/map_tie.hpp
==============================================================================
--- trunk/boost/fusion/container/generation/map_tie.hpp	(original)
+++ trunk/boost/fusion/container/generation/map_tie.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -81,7 +81,7 @@
             BOOST_PP_ENUM_PARAMS(N, typename K)
           , BOOST_PP_ENUM_PARAMS(N, typename D)
         >
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         #define TEXT(z, n, text) , text
 
         struct map_tie<BOOST_PP_ENUM_PARAMS(N, K), BOOST_PP_ENUM_PARAMS(N, D) BOOST_PP_REPEAT_FROM_TO(N, FUSION_MAX_MAP_SIZE, TEXT, void_) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(N), FUSION_MAX_MAP_SIZE, TEXT, void_)>
Modified: trunk/boost/fusion/container/generation/vector_tie.hpp
==============================================================================
--- trunk/boost/fusion/container/generation/vector_tie.hpp	(original)
+++ trunk/boost/fusion/container/generation/vector_tie.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -53,7 +53,7 @@
     namespace result_of
     {
         template <BOOST_PP_ENUM_PARAMS(N, typename T)>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
         #define TEXT(z, n, text) , text
         struct vector_tie< BOOST_PP_ENUM_PARAMS(N, T) BOOST_PP_REPEAT_FROM_TO(BOOST_PP_DEC(N), FUSION_MAX_VECTOR_SIZE, TEXT, void_) >
         #undef TEXT
Modified: trunk/boost/fusion/support/tag_of.hpp
==============================================================================
--- trunk/boost/fusion/support/tag_of.hpp	(original)
+++ trunk/boost/fusion/support/tag_of.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -16,7 +16,7 @@
 #include <boost/mpl/assert.hpp>
 #include <boost/mpl/bool.hpp>
 #include <boost/mpl/if.hpp>
-#include <utility>
+#include <boost/config/no_tr1/utility.hpp>
 
 namespace boost
 {
Modified: trunk/boost/fusion/view/transform_view/transform_view.hpp
==============================================================================
--- trunk/boost/fusion/view/transform_view/transform_view.hpp	(original)
+++ trunk/boost/fusion/view/transform_view/transform_view.hpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -73,7 +73,7 @@
 
     // Unary Version
     template <typename Sequence, typename F>
-#if defined(BOOST_PARTIAL_SPECIALIZATION_EXPLICT_ARGS)
+#if defined(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS)
     struct transform_view<Sequence, F, void_> : sequence_base<transform_view<Sequence, F, void_> >
 #else
     struct transform_view<Sequence, F> : sequence_base<transform_view<Sequence, F> >
Modified: trunk/libs/config/doc/html/boost_config/boost_macro_reference.html
==============================================================================
--- trunk/libs/config/doc/html/boost_config/boost_macro_reference.html	(original)
+++ trunk/libs/config/doc/html/boost_config/boost_macro_reference.html	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -670,6 +670,24 @@
 <tr>
 <td>
               <p>
+                <code class="computeroutput"><span class="identifier">BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS</span></code>
+              </p>
+              </td>
+<td>
+              <p>
+                Compiler
+              </p>
+              </td>
+<td>
+              <p>
+                The compiler does not correctly handle partial specializations which
+                depend upon default arguments in the primary template.
+              </p>
+              </td>
+</tr>
+<tr>
+<td>
+              <p>
                 <code class="computeroutput"><span class="identifier">BOOST_NO_POINTER_TO_MEMBER_CONST</span></code>
               </p>
               </td>
Modified: trunk/libs/config/doc/html/index.html
==============================================================================
--- trunk/libs/config/doc/html/index.html	(original)
+++ trunk/libs/config/doc/html/index.html	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -960,7 +960,7 @@
   </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: April 21, 2008 at 09:16:51 GMT</small></p></td>
+<td align="left"><p><small>Last revised: April 21, 2008 at 11:41:47 GMT</small></p></td>
 <td align="right"><div class="copyright-footer"></div></td>
 </tr></table>
 <hr>
Modified: trunk/libs/config/doc/macro_reference.qbk
==============================================================================
--- trunk/libs/config/doc/macro_reference.qbk	(original)
+++ trunk/libs/config/doc/macro_reference.qbk	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -176,6 +176,10 @@
 namespace scope, then using'ed to boost. Probably GCC specific. See
 [@../../../../boost/operators.hpp `<boost/operators.hpp>`] for example.
 ]]
+[[`BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS`][Compiler][
+The compiler does not correctly handle partial specializations
+which depend upon default arguments in the primary template.
+]]
 [[`BOOST_NO_POINTER_TO_MEMBER_CONST`][Compiler][
 The compiler does not correctly handle pointers to const member functions,
 preventing use of these in overloaded function templates. See
Modified: trunk/libs/config/test/all/Jamfile.v2
==============================================================================
--- trunk/libs/config/test/all/Jamfile.v2	(original)
+++ trunk/libs/config/test/all/Jamfile.v2	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -1,7 +1,7 @@
 #
 # Regression test Jamfile for boost configuration setup.
 # *** DO NOT EDIT THIS FILE BY HAND ***
-# This file was automatically generated on Mon Apr 21 10:10:52 2008
+# This file was automatically generated on Mon Apr 21 12:40:41 2008
 #  by libs/config/tools/generate.cpp
 # Copyright John Maddock.
 # Use, modification and distribution are subject to the 
@@ -280,6 +280,9 @@
 test-suite "BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION" : 
 [ run ../no_partial_spec_pass.cpp ]
 [ compile-fail ../no_partial_spec_fail.cpp ] ;
+test-suite "BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS" : 
+[ run ../no_part_spec_def_args_pass.cpp ]
+[ compile-fail ../no_part_spec_def_args_fail.cpp ] ;
 test-suite "BOOST_NO_PRIVATE_IN_AGGREGATE" : 
 [ run ../no_priv_aggregate_pass.cpp ]
 [ compile-fail ../no_priv_aggregate_fail.cpp ] ;
Modified: trunk/libs/config/test/config_info.cpp
==============================================================================
--- trunk/libs/config/test/config_info.cpp	(original)
+++ trunk/libs/config/test/config_info.cpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -983,6 +983,7 @@
    PRINT_MACRO(BOOST_NO_MEMBER_TEMPLATE_KEYWORD);
    PRINT_MACRO(BOOST_NO_MS_INT64_NUMERIC_LIMITS);
    PRINT_MACRO(BOOST_NO_OPERATORS_IN_NAMESPACE);
+   PRINT_MACRO(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS);
    PRINT_MACRO(BOOST_NO_POINTER_TO_MEMBER_CONST);
    PRINT_MACRO(BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS);
    PRINT_MACRO(BOOST_NO_PRIVATE_IN_AGGREGATE);
@@ -1030,6 +1031,9 @@
 
 
 
+
+
+
    // END GENERATED BLOCK
 
    PRINT_MACRO(BOOST_INTEL);
Modified: trunk/libs/config/test/config_test.cpp
==============================================================================
--- trunk/libs/config/test/config_test.cpp	(original)
+++ trunk/libs/config/test/config_test.cpp	2008-04-21 08:06:02 EDT (Mon, 21 Apr 2008)
@@ -1,4 +1,4 @@
-//  This file was automatically generated on Mon Apr 21 10:10:52 2008
+//  This file was automatically generated on Mon Apr 21 12:40:41 2008
 //  by libs/config/tools/generate.cpp
 //  Copyright John Maddock 2002-4.
 //  Use, modification and distribution are subject to the 
@@ -197,6 +197,11 @@
 #else
 namespace boost_no_template_partial_specialization = empty_boost;
 #endif
+#ifndef BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS
+#include "boost_no_part_spec_def_args.ipp"
+#else
+namespace boost_no_partial_specialization_implicit_default_args = empty_boost;
+#endif
 #ifndef BOOST_NO_PRIVATE_IN_AGGREGATE
 #include "boost_no_priv_aggregate.ipp"
 #else
@@ -1026,6 +1031,11 @@
       std::cerr << "Failed test for BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION at: " << __FILE__ << ":" << __LINE__ << std::endl;
       ++error_count;
    }
+   if(0 != boost_no_partial_specialization_implicit_default_args::test())
+   {
+      std::cerr << "Failed test for BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS at: " << __FILE__ << ":" << __LINE__ << std::endl;
+      ++error_count;
+   }
    if(0 != boost_no_private_in_aggregate::test())
    {
       std::cerr << "Failed test for BOOST_NO_PRIVATE_IN_AGGREGATE at: " << __FILE__ << ":" << __LINE__ << std::endl;