mirror of
https://github.com/boostorg/config.git
synced 2025-07-31 21:04:28 +02:00
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. [SVN r44692]
This commit is contained in:
@@ -668,6 +668,24 @@
|
||||
</td>
|
||||
</tr>
|
||||
<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>
|
||||
|
@@ -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>
|
||||
|
@@ -176,6 +176,10 @@ Compiler requires inherited operator friend functions to be defined at
|
||||
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
|
||||
|
@@ -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
|
||||
|
||||
|
||||
|
||||
|
@@ -120,6 +120,15 @@
|
||||
# define BOOST_NO_STD_ITERATOR_TRAITS
|
||||
# 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:
|
||||
|
@@ -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_OPERATORS_IN_NAMESPACE" :
|
||||
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 ] ;
|
||||
|
@@ -983,6 +983,7 @@ void print_boost_macros()
|
||||
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);
|
||||
@@ -1029,6 +1030,9 @@ void print_boost_macros()
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// END GENERATED BLOCK
|
||||
|
||||
|
@@ -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 @@ namespace boost_no_operators_in_namespace = empty_boost;
|
||||
#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 @@ int main( int, char *[] )
|
||||
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;
|
||||
|
Reference in New Issue
Block a user