Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r49312 - in branches/release/boost/test: . detail impl included output utils utils/basic_cstring utils/iterator utils/runtime utils/runtime/cla utils/runtime/cla/detail utils/runtime/cla/iface utils/runtime/env utils/runtime/file
From: gennadiy.rozental_at_[hidden]
Date: 2008-10-13 04:20:38


Author: rogeeff
Date: 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
New Revision: 49312
URL: http://svn.boost.org/trac/boost/changeset/49312

Log:
merge from trunk
Added:
   branches/release/boost/test/utils/lazy_ostream.hpp
      - copied unchanged from r49311, /trunk/boost/test/utils/lazy_ostream.hpp
Text files modified:
   branches/release/boost/test/auto_unit_test.hpp | 2
   branches/release/boost/test/debug.hpp | 2
   branches/release/boost/test/debug_config.hpp | 2
   branches/release/boost/test/detail/config.hpp | 35 +-
   branches/release/boost/test/detail/enable_warnings.hpp | 3
   branches/release/boost/test/detail/fwd_decl.hpp | 3
   branches/release/boost/test/detail/global_typedef.hpp | 2
   branches/release/boost/test/detail/log_level.hpp | 2
   branches/release/boost/test/detail/suppress_warnings.hpp | 3
   branches/release/boost/test/detail/unit_test_parameters.hpp | 2
   branches/release/boost/test/detail/workaround.hpp | 2
   branches/release/boost/test/exception_safety.hpp | 4
   branches/release/boost/test/execution_monitor.hpp | 2
   branches/release/boost/test/floating_point_comparison.hpp | 6
   branches/release/boost/test/framework.hpp | 4
   branches/release/boost/test/impl/compiler_log_formatter.ipp | 17 +
   branches/release/boost/test/impl/cpp_main.ipp | 2
   branches/release/boost/test/impl/debug.ipp | 46 ++-
   branches/release/boost/test/impl/exception_safety.ipp | 9
   branches/release/boost/test/impl/execution_monitor.ipp | 490 +++++++++++++++++++++------------------
   branches/release/boost/test/impl/framework.ipp | 29 ++
   branches/release/boost/test/impl/interaction_based.ipp | 7
   branches/release/boost/test/impl/logged_expectations.ipp | 7
   branches/release/boost/test/impl/plain_report_formatter.ipp | 4
   branches/release/boost/test/impl/progress_monitor.ipp | 2
   branches/release/boost/test/impl/results_collector.ipp | 2
   branches/release/boost/test/impl/results_reporter.ipp | 2
   branches/release/boost/test/impl/test_main.ipp | 2
   branches/release/boost/test/impl/test_tools.ipp | 179 +++++++-------
   branches/release/boost/test/impl/unit_test_log.ipp | 121 ++++++---
   branches/release/boost/test/impl/unit_test_main.ipp | 17
   branches/release/boost/test/impl/unit_test_monitor.ipp | 2
   branches/release/boost/test/impl/unit_test_parameters.ipp | 6
   branches/release/boost/test/impl/unit_test_suite.ipp | 9
   branches/release/boost/test/impl/xml_log_formatter.ipp | 5
   branches/release/boost/test/impl/xml_report_formatter.ipp | 2
   branches/release/boost/test/included/prg_exec_monitor.hpp | 2
   branches/release/boost/test/included/test_exec_monitor.hpp | 2
   branches/release/boost/test/included/unit_test.hpp | 2
   branches/release/boost/test/interaction_based.hpp | 5
   branches/release/boost/test/logged_expectations.hpp | 4
   branches/release/boost/test/minimal.hpp | 2
   branches/release/boost/test/mock_object.hpp | 2
   branches/release/boost/test/output/compiler_log_formatter.hpp | 3
   branches/release/boost/test/output/plain_report_formatter.hpp | 2
   branches/release/boost/test/output/xml_log_formatter.hpp | 3
   branches/release/boost/test/output/xml_report_formatter.hpp | 2
   branches/release/boost/test/output_test_stream.hpp | 2
   branches/release/boost/test/parameterized_test.hpp | 2
   branches/release/boost/test/predicate_result.hpp | 2
   branches/release/boost/test/prg_exec_monitor.hpp | 2
   branches/release/boost/test/progress_monitor.hpp | 2
   branches/release/boost/test/results_collector.hpp | 2
   branches/release/boost/test/results_reporter.hpp | 2
   branches/release/boost/test/test_case_template.hpp | 5
   branches/release/boost/test/test_exec_monitor.hpp | 2
   branches/release/boost/test/test_observer.hpp | 2
   branches/release/boost/test/test_tools.hpp | 129 ++++++----
   branches/release/boost/test/unit_test.hpp | 2
   branches/release/boost/test/unit_test_log.hpp | 33 +-
   branches/release/boost/test/unit_test_log_formatter.hpp | 3
   branches/release/boost/test/unit_test_monitor.hpp | 2
   branches/release/boost/test/unit_test_suite.hpp | 3
   branches/release/boost/test/unit_test_suite_impl.hpp | 11
   branches/release/boost/test/utils/algorithm.hpp | 2
   branches/release/boost/test/utils/assign_op.hpp | 2
   branches/release/boost/test/utils/basic_cstring/basic_cstring.hpp | 18
   branches/release/boost/test/utils/basic_cstring/basic_cstring_fwd.hpp | 2
   branches/release/boost/test/utils/basic_cstring/bcs_char_traits.hpp | 2
   branches/release/boost/test/utils/basic_cstring/compare.hpp | 4
   branches/release/boost/test/utils/basic_cstring/io.hpp | 2
   branches/release/boost/test/utils/callback.hpp | 2
   branches/release/boost/test/utils/class_properties.hpp | 2
   branches/release/boost/test/utils/custom_manip.hpp | 2
   branches/release/boost/test/utils/fixed_mapping.hpp | 2
   branches/release/boost/test/utils/foreach.hpp | 26 --
   branches/release/boost/test/utils/iterator/ifstream_line_iterator.hpp | 2
   branches/release/boost/test/utils/iterator/input_iterator_facade.hpp | 2
   branches/release/boost/test/utils/iterator/istream_line_iterator.hpp | 8
   branches/release/boost/test/utils/iterator/token_iterator.hpp | 2
   branches/release/boost/test/utils/named_params.hpp | 2
   branches/release/boost/test/utils/nullstream.hpp | 2
   branches/release/boost/test/utils/rtti.hpp | 2
   branches/release/boost/test/utils/runtime/argument.hpp | 2
   branches/release/boost/test/utils/runtime/cla/argument_factory.hpp | 2
   branches/release/boost/test/utils/runtime/cla/argv_traverser.cpp | 2
   branches/release/boost/test/utils/runtime/cla/argv_traverser.hpp | 2
   branches/release/boost/test/utils/runtime/cla/argv_traverser.ipp | 2
   branches/release/boost/test/utils/runtime/cla/basic_parameter.hpp | 2
   branches/release/boost/test/utils/runtime/cla/char_parameter.cpp | 2
   branches/release/boost/test/utils/runtime/cla/char_parameter.hpp | 2
   branches/release/boost/test/utils/runtime/cla/char_parameter.ipp | 2
   branches/release/boost/test/utils/runtime/cla/detail/argument_value_usage.hpp | 2
   branches/release/boost/test/utils/runtime/cla/dual_name_parameter.cpp | 2
   branches/release/boost/test/utils/runtime/cla/dual_name_parameter.hpp | 2
   branches/release/boost/test/utils/runtime/cla/dual_name_parameter.ipp | 2
   branches/release/boost/test/utils/runtime/cla/fwd.hpp | 2
   branches/release/boost/test/utils/runtime/cla/id_policy.cpp | 2
   branches/release/boost/test/utils/runtime/cla/id_policy.hpp | 2
   branches/release/boost/test/utils/runtime/cla/id_policy.ipp | 2
   branches/release/boost/test/utils/runtime/cla/iface/argument_factory.hpp | 4
   branches/release/boost/test/utils/runtime/cla/iface/id_policy.hpp | 3
   branches/release/boost/test/utils/runtime/cla/modifier.hpp | 2
   branches/release/boost/test/utils/runtime/cla/named_parameter.cpp | 2
   branches/release/boost/test/utils/runtime/cla/named_parameter.hpp | 2
   branches/release/boost/test/utils/runtime/cla/named_parameter.ipp | 2
   branches/release/boost/test/utils/runtime/cla/parameter.hpp | 4
   branches/release/boost/test/utils/runtime/cla/parser.cpp | 2
   branches/release/boost/test/utils/runtime/cla/parser.hpp | 2
   branches/release/boost/test/utils/runtime/cla/parser.ipp | 2
   branches/release/boost/test/utils/runtime/cla/positional_parameter.hpp | 8
   branches/release/boost/test/utils/runtime/cla/typed_parameter.hpp | 2
   branches/release/boost/test/utils/runtime/cla/validation.cpp | 2
   branches/release/boost/test/utils/runtime/cla/validation.hpp | 2
   branches/release/boost/test/utils/runtime/cla/validation.ipp | 2
   branches/release/boost/test/utils/runtime/cla/value_generator.hpp | 2
   branches/release/boost/test/utils/runtime/cla/value_handler.hpp | 2
   branches/release/boost/test/utils/runtime/config.hpp | 2
   branches/release/boost/test/utils/runtime/configuration.hpp | 2
   branches/release/boost/test/utils/runtime/env/environment.cpp | 2
   branches/release/boost/test/utils/runtime/env/environment.hpp | 2
   branches/release/boost/test/utils/runtime/env/environment.ipp | 2
   branches/release/boost/test/utils/runtime/env/fwd.hpp | 6
   branches/release/boost/test/utils/runtime/env/modifier.hpp | 2
   branches/release/boost/test/utils/runtime/env/variable.hpp | 2
   branches/release/boost/test/utils/runtime/file/config_file.cpp | 2
   branches/release/boost/test/utils/runtime/file/config_file.hpp | 2
   branches/release/boost/test/utils/runtime/file/config_file_iterator.cpp | 2
   branches/release/boost/test/utils/runtime/file/config_file_iterator.hpp | 2
   branches/release/boost/test/utils/runtime/fwd.hpp | 2
   branches/release/boost/test/utils/runtime/interpret_argument_value.hpp | 2
   branches/release/boost/test/utils/runtime/parameter.hpp | 2
   branches/release/boost/test/utils/runtime/trace.hpp | 2
   branches/release/boost/test/utils/runtime/validation.hpp | 2
   branches/release/boost/test/utils/trivial_singleton.hpp | 2
   branches/release/boost/test/utils/wrap_stringstream.hpp | 6
   branches/release/boost/test/utils/xml_printer.hpp | 14
   137 files changed, 818 insertions(+), 676 deletions(-)

Modified: branches/release/boost/test/auto_unit_test.hpp
==============================================================================
--- branches/release/boost/test/auto_unit_test.hpp (original)
+++ branches/release/boost/test/auto_unit_test.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/debug.hpp
==============================================================================
--- branches/release/boost/test/debug.hpp (original)
+++ branches/release/boost/test/debug.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2006-2007.
+// (C) Copyright Gennadiy Rozental 2006-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/debug_config.hpp
==============================================================================
--- branches/release/boost/test/debug_config.hpp (original)
+++ branches/release/boost/test/debug_config.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2006-2007.
+// (C) Copyright Gennadiy Rozental 2006-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/detail/config.hpp
==============================================================================
--- branches/release/boost/test/detail/config.hpp (original)
+++ branches/release/boost/test/detail/config.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -19,12 +19,6 @@
 #include <boost/config.hpp> // compilers workarounds
 #include <boost/detail/workaround.hpp>
 
-#if BOOST_WORKAROUND(__GNUC__, < 3) && !defined(__SGI_STL_PORT) && !defined(_STLPORT_VERSION)
-# define BOOST_CLASSIC_IOSTREAMS
-#else
-# define BOOST_STANDARD_IOSTREAMS
-#endif
-
 //____________________________________________________________________________//
 
 #if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x570)) || \
@@ -43,19 +37,20 @@
 
 //____________________________________________________________________________//
 
-#if defined(BOOST_HAS_SIGACTION)
-# define BOOST_TEST_SUPPORT_TIMEOUT
+#if !defined(BOOST_NO_STD_LOCALE) && \
+ !BOOST_WORKAROUND(BOOST_MSVC, < 1310) && \
+ !defined(__MWERKS__)
+# define BOOST_TEST_USE_STD_LOCALE 1
 #endif
 
 //____________________________________________________________________________//
 
-#if BOOST_WORKAROUND(__BORLANDC__, <= 0x570) || \
- BOOST_WORKAROUND( __COMO__, <= 0x433 ) || \
- BOOST_WORKAROUND( __INTEL_COMPILER, <= 800 ) || \
- BOOST_WORKAROUND(__GNUC__, < 3) || \
- defined(__sgi) && _COMPILER_VERSION <= 730 || \
- BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(600)) || \
- defined(__DECCXX) || \
+#if BOOST_WORKAROUND(__BORLANDC__, <= 0x570) || \
+ BOOST_WORKAROUND( __COMO__, <= 0x433 ) || \
+ BOOST_WORKAROUND( __INTEL_COMPILER, <= 800 ) || \
+ defined(__sgi) && _COMPILER_VERSION <= 730 || \
+ BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(600)) || \
+ defined(__DECCXX) || \
     defined(__DMC__)
 # define BOOST_TEST_NO_PROTECTED_USING
 #endif
@@ -70,6 +65,14 @@
 
 //____________________________________________________________________________//
 
+#if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564)) && \
+ !BOOST_WORKAROUND(BOOST_MSVC, <1310) && \
+ !BOOST_WORKAROUND(__SUNPRO_CC, BOOST_TESTED_AT(0x530))
+# define BOOST_TEST_SUPPORT_INTERACTION_TESTING 1
+#endif
+
+//____________________________________________________________________________//
+
 #if defined(BOOST_ALL_DYN_LINK) && !defined(BOOST_TEST_DYN_LINK)
 # define BOOST_TEST_DYN_LINK
 #endif

Modified: branches/release/boost/test/detail/enable_warnings.hpp
==============================================================================
--- branches/release/boost/test/detail/enable_warnings.hpp (original)
+++ branches/release/boost/test/detail/enable_warnings.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2004-2007.
+// (C) Copyright Gennadiy Rozental 2004-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -23,5 +23,6 @@
 # pragma warning(default: 4127) // conditional expression is constant
 # pragma warning(default: 4290) // C++ exception specification ignored except to ...
 # pragma warning(default: 4180) // qualifier applied to function type has no meaning; ignored
+# pragma warning(default: 4275) // non dll-interface class ... used as base for dll-interface class ...
 # pragma warning(pop)
 #endif

Modified: branches/release/boost/test/detail/fwd_decl.hpp
==============================================================================
--- branches/release/boost/test/detail/fwd_decl.hpp (original)
+++ branches/release/boost/test/detail/fwd_decl.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -38,6 +38,7 @@
 struct log_entry_data;
 struct log_checkpoint_data;
 
+class lazy_ostream;
 
 } // namespace unit_test
 

Modified: branches/release/boost/test/detail/global_typedef.hpp
==============================================================================
--- branches/release/boost/test/detail/global_typedef.hpp (original)
+++ branches/release/boost/test/detail/global_typedef.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/detail/log_level.hpp
==============================================================================
--- branches/release/boost/test/detail/log_level.hpp (original)
+++ branches/release/boost/test/detail/log_level.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/detail/suppress_warnings.hpp
==============================================================================
--- branches/release/boost/test/detail/suppress_warnings.hpp (original)
+++ branches/release/boost/test/detail/suppress_warnings.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2004-2007.
+// (C) Copyright Gennadiy Rozental 2004-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -24,5 +24,6 @@
 # pragma warning(disable: 4127) // conditional expression is constant
 # pragma warning(disable: 4290) // C++ exception specification ignored except to ...
 # pragma warning(disable: 4180) // qualifier applied to function type has no meaning; ignored
+# pragma warning(disable: 4275) // non dll-interface class ... used as base for dll-interface class ...
 #endif
 

Modified: branches/release/boost/test/detail/unit_test_parameters.hpp
==============================================================================
--- branches/release/boost/test/detail/unit_test_parameters.hpp (original)
+++ branches/release/boost/test/detail/unit_test_parameters.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/detail/workaround.hpp
==============================================================================
--- branches/release/boost/test/detail/workaround.hpp (original)
+++ branches/release/boost/test/detail/workaround.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/exception_safety.hpp
==============================================================================
--- branches/release/boost/test/exception_safety.hpp (original)
+++ branches/release/boost/test/exception_safety.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -46,7 +46,7 @@
                                                                         \
 struct BOOST_AUTO_TC_UNIQUE_ID( test_name ) {}; \
                                                                         \
-BOOST_AUTO_TC_REGISTRAR( test_name )( \
+BOOST_AUTO_TU_REGISTRAR( test_name )( \
     boost::unit_test::make_test_case( \
         &BOOST_AUTO_TC_INVOKER( test_name ), #test_name ), \
     boost::unit_test::ut_detail::auto_tc_exp_fail< \

Modified: branches/release/boost/test/execution_monitor.hpp
==============================================================================
--- branches/release/boost/test/execution_monitor.hpp (original)
+++ branches/release/boost/test/execution_monitor.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // (C) Copyright Beman Dawes 2001.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at

Modified: branches/release/boost/test/floating_point_comparison.hpp
==============================================================================
--- branches/release/boost/test/floating_point_comparison.hpp (original)
+++ branches/release/boost/test/floating_point_comparison.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -181,8 +181,8 @@
         FPT d2 = tt_detail::safe_fpt_division( diff, tt_detail::fpt_abs( left ) );
         
         return p_strong_or_weak
- ? (d1 <= p_fraction_tolerance && d2 <= p_fraction_tolerance)
- : (d1 <= p_fraction_tolerance || d2 <= p_fraction_tolerance);
+ ? (d1 <= p_fraction_tolerance.get() && d2 <= p_fraction_tolerance.get())
+ : (d1 <= p_fraction_tolerance.get() || d2 <= p_fraction_tolerance.get());
     }
 
     // Public properties

Modified: branches/release/boost/test/framework.hpp
==============================================================================
--- branches/release/boost/test/framework.hpp (original)
+++ branches/release/boost/test/framework.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -54,6 +54,8 @@
 // mutation access methods
 BOOST_TEST_DECL void register_test_unit( test_case* tc );
 BOOST_TEST_DECL void register_test_unit( test_suite* ts );
+BOOST_TEST_DECL void deregister_test_unit( test_unit* tu );
+BOOST_TEST_DECL void clear();
 
 BOOST_TEST_DECL void register_observer( test_observer& );
 BOOST_TEST_DECL void deregister_observer( test_observer& );

Modified: branches/release/boost/test/impl/compiler_log_formatter.ipp
==============================================================================
--- branches/release/boost/test/impl/compiler_log_formatter.ipp (original)
+++ branches/release/boost/test/impl/compiler_log_formatter.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -20,6 +20,7 @@
 #include <boost/test/unit_test_suite_impl.hpp>
 #include <boost/test/framework.hpp>
 #include <boost/test/utils/basic_cstring/io.hpp>
+#include <boost/test/utils/lazy_ostream.hpp>
 
 // Boost
 #include <boost/version.hpp>
@@ -167,6 +168,14 @@
 //____________________________________________________________________________//
 
 void
+compiler_log_formatter::log_entry_value( std::ostream& output, lazy_ostream const& value )
+{
+ output << value;
+}
+
+//____________________________________________________________________________//
+
+void
 compiler_log_formatter::log_entry_finish( std::ostream& output )
 {
     output << std::endl;
@@ -177,7 +186,13 @@
 void
 compiler_log_formatter::print_prefix( std::ostream& output, const_string file, std::size_t line )
 {
+#ifdef __APPLE_CC__
+ // Xcode-compatible logging format, idea by Richard Dingwall at
+ // <http://richarddingwall.name/2008/06/01/using-the-boost-unit-test-framework-with-xcode-3/>.
+ output << file << ':' << line << ": ";
+#else
     output << file << '(' << line << "): ";
+#endif
 }
 
 //____________________________________________________________________________//

Modified: branches/release/boost/test/impl/cpp_main.ipp
==============================================================================
--- branches/release/boost/test/impl/cpp_main.ipp (original)
+++ branches/release/boost/test/impl/cpp_main.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // (C) Copyright Beman Dawes 1995-2001.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at

Modified: branches/release/boost/test/impl/debug.ipp
==============================================================================
--- branches/release/boost/test/impl/debug.ipp (original)
+++ branches/release/boost/test/impl/debug.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2006-2007.
+// (C) Copyright Gennadiy Rozental 2006-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -32,6 +32,7 @@
 # include <windows.h>
 # include <winreg.h>
 # include <cstdio>
+# include <cstring>
 
 # if !defined(NDEBUG) && defined(_MSC_VER)
 # define BOOST_MS_CRT_BASED_DEBUG
@@ -56,8 +57,9 @@
 #include <boost/test/utils/algorithm.hpp>
 
 // STL
-#include <cstring>
+#include <cstring> // std::memcpy
 #include <map>
+#include <cstdio>
 #include <stdarg.h> // !! ?? cstdarg
 
 // SYSTEM API
@@ -495,7 +497,7 @@
 //____________________________________________________________________________//
 
 static void
-start_gdb_in_xemacs( dbg_startup_info const& dsi )
+start_gdb_in_xemacs( dbg_startup_info const& )
 {
     // !! ??
 }
@@ -550,7 +552,7 @@
 //____________________________________________________________________________//
 
 static void
-start_dbx_in_emacs( dbg_startup_info const& dsi )
+start_dbx_in_emacs( dbg_startup_info const& /*dsi*/ )
 {
 // char dbg_cmd_buff[500]; // !! ??
 //
@@ -562,7 +564,7 @@
 //____________________________________________________________________________//
 
 static void
-start_dbx_in_xemacs( dbg_startup_info const& dsi )
+start_dbx_in_xemacs( dbg_startup_info const& )
 {
     // !! ??
 }
@@ -722,19 +724,11 @@
 // ************** console debugger setup ************** //
 // ************************************************************************** //
 
-#if BOOST_WORKAROUND( BOOST_MSVC, <1300)
-std::string
-set_debugger( unit_test::const_string dbg_id )
-{
- dbg_starter s;
-#else
+#if defined(BOOST_UNIX_BASED_DEBUG) // ************************ UNIX
+
 std::string
 set_debugger( unit_test::const_string dbg_id, dbg_starter s )
 {
-#endif
-
-#if defined(BOOST_UNIX_BASED_DEBUG) // ************************ UNIX
-
     std::string old = s_info.p_dbg;
 
     assign_op( s_info.p_dbg.value, dbg_id, 0 );
@@ -743,13 +737,17 @@
         s_info.m_dbg_starter_reg[s_info.p_dbg] = s;
 
     return old;
+}
 
 #else // ***************************************************** default
 
+std::string
+set_debugger( unit_test::const_string, dbg_starter )
+{
     return std::string();
+}
 
 #endif
-}
 
 //____________________________________________________________________________//
 
@@ -854,6 +852,11 @@
     if( !created )
         return false;
 
+ if( break_or_continue )
+ debugger_break();
+
+ return true;
+
 #elif defined(BOOST_UNIX_BASED_DEBUG) // ********************** UNIX
 
     char init_done_lock_fn[] = "/tmp/btl_dbg_init_done_XXXXXX";
@@ -900,16 +903,16 @@
 // char dummy;
 // while( ::read( init_done_lock_fd, &dummy, sizeof(char) ) == 0 );
 
+ if( break_or_continue )
+ debugger_break();
+
+ return true;
+
 #else // ****************************************************** default
 
     return false;
 
 #endif
-
- if( break_or_continue )
- debugger_break();
-
- return true;
 }
 
 //____________________________________________________________________________//
@@ -964,3 +967,4 @@
 #include <boost/test/detail/enable_warnings.hpp>
 
 #endif // BOOST_TEST_DEBUG_API_IPP_112006GER
+

Modified: branches/release/boost/test/impl/exception_safety.ipp
==============================================================================
--- branches/release/boost/test/impl/exception_safety.ipp (original)
+++ branches/release/boost/test/impl/exception_safety.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -18,10 +18,7 @@
 // Boost.Test
 #include <boost/test/detail/config.hpp>
 
-#if !BOOST_WORKAROUND(__GNUC__, < 3) && \
- !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564)) && \
- !BOOST_WORKAROUND(BOOST_MSVC, <1310) && \
- !BOOST_WORKAROUND(__SUNPRO_CC, BOOST_TESTED_AT(0x530))
+#if BOOST_TEST_SUPPORT_INTERACTION_TESTING
 
 #include <boost/test/detail/global_typedef.hpp>
 #include <boost/test/detail/unit_test_parameters.hpp>
@@ -401,7 +398,7 @@
 namespace {
 
 inline void
-format_location( wrap_stringstream& formatter, execution_path_point const& p, unsigned indent )
+format_location( wrap_stringstream& formatter, execution_path_point const& /*p*/, unsigned indent )
 {
     if( indent )
         formatter << std::left << std::setw( indent ) << "";

Modified: branches/release/boost/test/impl/execution_monitor.ipp
==============================================================================
--- branches/release/boost/test/impl/execution_monitor.ipp (original)
+++ branches/release/boost/test/impl/execution_monitor.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // (C) Copyright Beman Dawes and Ullrich Koethe 1995-2001.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
@@ -51,12 +51,17 @@
 #endif
 
 // to use vsnprintf
-#if defined(__SUNPRO_CC) && defined(__SunOS)
+#if defined(__SUNPRO_CC) || defined(__SunOS)
 # include <stdio.h>
 # include <stdarg.h>
 using std::va_list;
 #endif
 
+// to use vsnprintf
+#if defined(__QNXNTO__)
+# include <stdio.h>
+#endif
+
 #if defined(_WIN32) && !defined(BOOST_DISABLE_WIN32) && \
     (!defined(__COMO__) && !defined(__MWERKS__) && !defined(__GNUC__) || \
      BOOST_WORKAROUND(__MWERKS__, >= 0x3000))
@@ -65,13 +70,17 @@
 
 # include <windows.h>
 
-# if defined(__MWERKS__)
+# if defined(__MWERKS__) || (defined(_MSC_VER) && !defined(UNDER_CE))
 # include <eh.h>
 # endif
 
-# if defined(__BORLANDC__) || defined(__MWERKS__)
+# if defined(__BORLANDC__) && __BORLANDC__ >= 0x560 || defined(__MWERKS__)
 # include <stdint.h>
-#endif
+# endif
+
+# if defined(__BORLANDC__) && __BORLANDC__ < 0x560
+ typedef unsigned uintptr_t;
+# endif
 
 # if BOOST_WORKAROUND(_MSC_VER, < 1300 ) || defined(UNDER_CE)
 typedef void* uintptr_t;
@@ -135,11 +144,14 @@
 # include <signal.h>
 # include <setjmp.h>
 
-# if !defined(__CYGWIN__)
+# if !defined(__CYGWIN__) && !defined(__QNXNTO__)
 # define BOOST_TEST_USE_ALT_STACK
 # endif
 
-# if !defined(__CYGWIN__) && !(defined(macintosh) || defined(__APPLE__) || defined(__APPLE_CC__))
+# if defined(SIGPOLL) && !defined(__CYGWIN__) && \
+ !(defined(macintosh) || defined(__APPLE__) || defined(__APPLE_CC__)) && \
+ !defined(__NetBSD__) && \
+ !defined(__QNXNTO__)
 # define BOOST_TEST_CATCH_SIGPOLL
 # endif
 
@@ -249,245 +261,246 @@
     if( !m_sig_info )
         return; // no error actually occur?
 
- if( m_sig_info->si_code <= 0 ) {
+ switch( m_sig_info->si_code ) {
+ case SI_USER:
+ report_error( execution_exception::system_error,
+ "signal: generated by kill() (or family); uid=%d; pid=%d",
+ (int)m_sig_info->si_uid, (int)m_sig_info->si_pid );
+ break;
+ case SI_QUEUE:
+ report_error( execution_exception::system_error,
+ "signal: sent by sigqueue()" );
+ break;
+ case SI_TIMER:
+ report_error( execution_exception::system_error,
+ "signal: the expiration of a timer set by timer_settimer()" );
+ break;
+ case SI_ASYNCIO:
+ report_error( execution_exception::system_error,
+ "signal: generated by the completion of an asynchronous I/O request" );
+ break;
+ case SI_MESGQ:
+ report_error( execution_exception::system_error,
+ "signal: generated by the the arrival of a message on an empty message queue" );
+ break;
+ default:
+ break;
+ }
+
+ switch( m_sig_info->si_signo ) {
+ case SIGILL:
         switch( m_sig_info->si_code ) {
- case SI_USER:
+ case ILL_ILLOPC:
+ report_error( execution_exception::system_fatal_error,
+ "signal: illegal opcode; address of failing instruction: 0x%08lx",
+ m_sig_info->si_addr );
+ break;
+ case ILL_ILLOPN:
+ report_error( execution_exception::system_fatal_error,
+ "signal: illegal operand; address of failing instruction: 0x%08lx",
+ m_sig_info->si_addr );
+ break;
+ case ILL_ILLADR:
+ report_error( execution_exception::system_fatal_error,
+ "signal: illegal addressing mode; address of failing instruction: 0x%08lx",
+ m_sig_info->si_addr );
+ break;
+ case ILL_ILLTRP:
+ report_error( execution_exception::system_fatal_error,
+ "signal: illegal trap; address of failing instruction: 0x%08lx",
+ m_sig_info->si_addr );
+ break;
+ case ILL_PRVOPC:
+ report_error( execution_exception::system_fatal_error,
+ "signal: privileged opcode; address of failing instruction: 0x%08lx",
+ m_sig_info->si_addr );
+ break;
+ case ILL_PRVREG:
+ report_error( execution_exception::system_fatal_error,
+ "signal: privileged register; address of failing instruction: 0x%08lx",
+ m_sig_info->si_addr );
+ break;
+ case ILL_COPROC:
+ report_error( execution_exception::system_fatal_error,
+ "signal: co-processor error; address of failing instruction: 0x%08lx",
+ m_sig_info->si_addr );
+ break;
+ case ILL_BADSTK:
+ report_error( execution_exception::system_fatal_error,
+ "signal: internal stack error; address of failing instruction: 0x%08lx",
+ m_sig_info->si_addr );
+ break;
+ }
+ break;
+
+ case SIGFPE:
+ switch( m_sig_info->si_code ) {
+ case FPE_INTDIV:
+ report_error( execution_exception::system_error,
+ "signal: integer divide by zero; address of failing instruction: 0x%08lx",
+ m_sig_info->si_addr );
+ break;
+ case FPE_INTOVF:
+ report_error( execution_exception::system_error,
+ "signal: integer overflow; address of failing instruction: 0x%08lx",
+ m_sig_info->si_addr );
+ break;
+ case FPE_FLTDIV:
             report_error( execution_exception::system_error,
- "signal: generated by kill() (or family); uid=%d; pid=%d",
- (int)m_sig_info->si_uid, (int)m_sig_info->si_pid );
+ "signal: floating point divide by zero; address of failing instruction: 0x%08lx",
+ m_sig_info->si_addr );
             break;
- case SI_QUEUE:
+ case FPE_FLTOVF:
             report_error( execution_exception::system_error,
- "signal: sent by sigqueue()" );
+ "signal: floating point overflow; address of failing instruction: 0x%08lx",
+ m_sig_info->si_addr );
             break;
- case SI_TIMER:
+ case FPE_FLTUND:
             report_error( execution_exception::system_error,
- "signal: the expiration of a timer set by timer_settimer()" );
+ "signal: floating point underflow; address of failing instruction: 0x%08lx",
+ m_sig_info->si_addr );
             break;
- case SI_ASYNCIO:
+ case FPE_FLTRES:
             report_error( execution_exception::system_error,
- "signal: generated by the completion of an asynchronous I/O request" );
+ "signal: floating point inexact result; address of failing instruction: 0x%08lx",
+ m_sig_info->si_addr );
             break;
- case SI_MESGQ:
+ case FPE_FLTINV:
             report_error( execution_exception::system_error,
- "signal: generated by the the arrival of a message on an empty message queue" );
+ "signal: invalid floating point operation; address of failing instruction: 0x%08lx",
+ m_sig_info->si_addr );
+ break;
+ case FPE_FLTSUB:
+ report_error( execution_exception::system_error,
+ "signal: subscript out of range; address of failing instruction: 0x%08lx",
+ m_sig_info->si_addr );
             break;
         }
- }
- else {
- switch( m_sig_info->si_signo ) {
- case SIGILL:
- switch( m_sig_info->si_code ) {
- case ILL_ILLOPC:
- report_error( execution_exception::system_fatal_error,
- "signal: illegal opcode; address of failing instruction: 0x%08lx",
- m_sig_info->si_addr );
- break;
- case ILL_ILLOPN:
- report_error( execution_exception::system_fatal_error,
- "signal: illegal operand; address of failing instruction: 0x%08lx",
- m_sig_info->si_addr );
- break;
- case ILL_ILLADR:
- report_error( execution_exception::system_fatal_error,
- "signal: illegal addressing mode; address of failing instruction: 0x%08lx",
- m_sig_info->si_addr );
- break;
- case ILL_ILLTRP:
- report_error( execution_exception::system_fatal_error,
- "signal: illegal trap; address of failing instruction: 0x%08lx",
- m_sig_info->si_addr );
- break;
- case ILL_PRVOPC:
- report_error( execution_exception::system_fatal_error,
- "signal: privileged opcode; address of failing instruction: 0x%08lx",
- m_sig_info->si_addr );
- break;
- case ILL_PRVREG:
- report_error( execution_exception::system_fatal_error,
- "signal: privileged register; address of failing instruction: 0x%08lx",
- m_sig_info->si_addr );
- break;
- case ILL_COPROC:
- report_error( execution_exception::system_fatal_error,
- "signal: co-processor error; address of failing instruction: 0x%08lx",
- m_sig_info->si_addr );
- break;
- case ILL_BADSTK:
- report_error( execution_exception::system_fatal_error,
- "signal: internal stack error; address of failing instruction: 0x%08lx",
- m_sig_info->si_addr );
- break;
- }
- break;
-
- case SIGFPE:
- switch( m_sig_info->si_code ) {
- case FPE_INTDIV:
- report_error( execution_exception::system_error,
- "signal: integer divide by zero; address of failing instruction: 0x%08lx",
- m_sig_info->si_addr );
- break;
- case FPE_INTOVF:
- report_error( execution_exception::system_error,
- "signal: integer overflow; address of failing instruction: 0x%08lx",
- m_sig_info->si_addr );
- break;
- case FPE_FLTDIV:
- report_error( execution_exception::system_error,
- "signal: floating point divide by zero; address of failing instruction: 0x%08lx",
- m_sig_info->si_addr );
- break;
- case FPE_FLTOVF:
- report_error( execution_exception::system_error,
- "signal: floating point overflow; address of failing instruction: 0x%08lx",
- m_sig_info->si_addr );
- break;
- case FPE_FLTUND:
- report_error( execution_exception::system_error,
- "signal: floating point underflow; address of failing instruction: 0x%08lx",
- m_sig_info->si_addr );
- break;
- case FPE_FLTRES:
- report_error( execution_exception::system_error,
- "signal: floating point inexact result; address of failing instruction: 0x%08lx",
- m_sig_info->si_addr );
- break;
- case FPE_FLTINV:
- report_error( execution_exception::system_error,
- "signal: invalid floating point operation; address of failing instruction: 0x%08lx",
- m_sig_info->si_addr );
- break;
- case FPE_FLTSUB:
- report_error( execution_exception::system_error,
- "signal: subscript out of range; address of failing instruction: 0x%08lx",
- m_sig_info->si_addr );
- break;
- }
- break;
-
- case SIGSEGV:
- switch( m_sig_info->si_code ) {
- case SEGV_MAPERR:
- report_error( execution_exception::system_fatal_error,
- "memory access violation at address: 0x%08lx: no mapping at fault address",
- m_sig_info->si_addr );
- break;
- case SEGV_ACCERR:
- report_error( execution_exception::system_fatal_error,
- "memory access violation at address: 0x%08lx: invalid permissions",
- m_sig_info->si_addr );
- break;
- }
- break;
-
- case SIGBUS:
- switch( m_sig_info->si_code ) {
- case BUS_ADRALN:
- report_error( execution_exception::system_fatal_error,
- "memory access violation at address: 0x%08lx: invalid address alignment",
- m_sig_info->si_addr );
- break;
- case BUS_ADRERR:
- report_error( execution_exception::system_fatal_error,
- "memory access violation at address: 0x%08lx: non-existent physical address",
- m_sig_info->si_addr );
- break;
- case BUS_OBJERR:
- report_error( execution_exception::system_fatal_error,
- "memory access violation at address: 0x%08lx: object specific hardware error",
- m_sig_info->si_addr );
- break;
- }
- break;
-
- case SIGCHLD:
- switch( m_sig_info->si_code ) {
- case CLD_EXITED:
- report_error( execution_exception::system_error,
- "child has exited; pid: %d; uid: %d; exit value: %d",
- (int)m_sig_info->si_uid, (int)m_sig_info->si_pid, (int)m_sig_info->si_status );
- break;
- case CLD_KILLED:
- report_error( execution_exception::system_error,
- "child was killed; pid: %d; uid: %d; exit value: %d",
- (int)m_sig_info->si_uid, (int)m_sig_info->si_pid, (int)m_sig_info->si_status );
- break;
- case CLD_DUMPED:
- report_error( execution_exception::system_error,
- "child terminated abnormally; pid: %d; uid: %d; exit value: %d",
- (int)m_sig_info->si_uid, (int)m_sig_info->si_pid, (int)m_sig_info->si_status );
- break;
- case CLD_TRAPPED:
- report_error( execution_exception::system_error,
- "traced child has trapped; pid: %d; uid: %d; exit value: %d",
- (int)m_sig_info->si_uid, (int)m_sig_info->si_pid, (int)m_sig_info->si_status );
- break;
- case CLD_STOPPED:
- report_error( execution_exception::system_error,
- "child has stopped; pid: %d; uid: %d; exit value: %d",
- (int)m_sig_info->si_uid, (int)m_sig_info->si_pid, (int)m_sig_info->si_status );
- break;
- case CLD_CONTINUED:
- report_error( execution_exception::system_error,
- "stopped child had continued; pid: %d; uid: %d; exit value: %d",
- (int)m_sig_info->si_uid, (int)m_sig_info->si_pid, (int)m_sig_info->si_status );
- break;
- }
+ break;
+
+ case SIGSEGV:
+ switch( m_sig_info->si_code ) {
+ case SEGV_MAPERR:
+ report_error( execution_exception::system_fatal_error,
+ "memory access violation at address: 0x%08lx: no mapping at fault address",
+ m_sig_info->si_addr );
+ break;
+ case SEGV_ACCERR:
+ report_error( execution_exception::system_fatal_error,
+ "memory access violation at address: 0x%08lx: invalid permissions",
+ m_sig_info->si_addr );
             break;
+ }
+ break;
 
-#if defined(BOOST_TEST_CATCH_SIGPOLL)
+ case SIGBUS:
+ switch( m_sig_info->si_code ) {
+ case BUS_ADRALN:
+ report_error( execution_exception::system_fatal_error,
+ "memory access violation at address: 0x%08lx: invalid address alignment",
+ m_sig_info->si_addr );
+ break;
+ case BUS_ADRERR:
+ report_error( execution_exception::system_fatal_error,
+ "memory access violation at address: 0x%08lx: non-existent physical address",
+ m_sig_info->si_addr );
+ break;
+ case BUS_OBJERR:
+ report_error( execution_exception::system_fatal_error,
+ "memory access violation at address: 0x%08lx: object specific hardware error",
+ m_sig_info->si_addr );
+ break;
+ }
+ break;
 
- case SIGPOLL:
- switch( m_sig_info->si_code ) {
- case POLL_IN:
- report_error( execution_exception::system_error,
- "data input available; band event %d",
- (int)m_sig_info->si_band );
- break;
- case POLL_OUT:
- report_error( execution_exception::system_error,
- "output buffers available; band event %d",
- (int)m_sig_info->si_band );
- break;
- case POLL_MSG:
- report_error( execution_exception::system_error,
- "input message available; band event %d",
- (int)m_sig_info->si_band );
- break;
- case POLL_ERR:
- report_error( execution_exception::system_error,
- "i/o error; band event %d",
- (int)m_sig_info->si_band );
- break;
- case POLL_PRI:
- report_error( execution_exception::system_error,
- "high priority input available; band event %d",
- (int)m_sig_info->si_band );
- break;
- case POLL_HUP:
- report_error( execution_exception::system_error,
- "device disconnected; band event %d",
- (int)m_sig_info->si_band );
- break;
- }
+ case SIGCHLD:
+ switch( m_sig_info->si_code ) {
+ case CLD_EXITED:
+ report_error( execution_exception::system_error,
+ "child has exited; pid: %d; uid: %d; exit value: %d",
+ (int)m_sig_info->si_pid, (int)m_sig_info->si_uid, (int)m_sig_info->si_status );
+ break;
+ case CLD_KILLED:
+ report_error( execution_exception::system_error,
+ "child was killed; pid: %d; uid: %d; exit value: %d",
+ (int)m_sig_info->si_pid, (int)m_sig_info->si_uid, (int)m_sig_info->si_status );
+ break;
+ case CLD_DUMPED:
+ report_error( execution_exception::system_error,
+ "child terminated abnormally; pid: %d; uid: %d; exit value: %d",
+ (int)m_sig_info->si_pid, (int)m_sig_info->si_uid, (int)m_sig_info->si_status );
+ break;
+ case CLD_TRAPPED:
+ report_error( execution_exception::system_error,
+ "traced child has trapped; pid: %d; uid: %d; exit value: %d",
+ (int)m_sig_info->si_pid, (int)m_sig_info->si_uid, (int)m_sig_info->si_status );
             break;
+ case CLD_STOPPED:
+ report_error( execution_exception::system_error,
+ "child has stopped; pid: %d; uid: %d; exit value: %d",
+ (int)m_sig_info->si_pid, (int)m_sig_info->si_uid, (int)m_sig_info->si_status );
+ break;
+ case CLD_CONTINUED:
+ report_error( execution_exception::system_error,
+ "stopped child had continued; pid: %d; uid: %d; exit value: %d",
+ (int)m_sig_info->si_pid, (int)m_sig_info->si_uid, (int)m_sig_info->si_status );
+ break;
+ }
+ break;
 
-#endif
+#if defined(BOOST_TEST_CATCH_SIGPOLL)
 
- case SIGABRT:
+ case SIGPOLL:
+ switch( m_sig_info->si_code ) {
+ case POLL_IN:
             report_error( execution_exception::system_error,
- "signal: SIGABRT (application abort requested)" );
+ "data input available; band event %d",
+ (int)m_sig_info->si_band );
             break;
-
- case SIGALRM:
- report_error( execution_exception::timeout_error,
- "signal: SIGALRM (timeout while executing function)" );
+ case POLL_OUT:
+ report_error( execution_exception::system_error,
+ "output buffers available; band event %d",
+ (int)m_sig_info->si_band );
             break;
-
- default:
- report_error( execution_exception::system_error, "unrecognized signal" );
+ case POLL_MSG:
+ report_error( execution_exception::system_error,
+ "input message available; band event %d",
+ (int)m_sig_info->si_band );
+ break;
+ case POLL_ERR:
+ report_error( execution_exception::system_error,
+ "i/o error; band event %d",
+ (int)m_sig_info->si_band );
+ break;
+ case POLL_PRI:
+ report_error( execution_exception::system_error,
+ "high priority input available; band event %d",
+ (int)m_sig_info->si_band );
+ break;
+#if defined(POLL_ERR) && defined(POLL_HUP) && (POLL_ERR - POLL_HUP)
+ case POLL_HUP:
+ report_error( execution_exception::system_error,
+ "device disconnected; band event %d",
+ (int)m_sig_info->si_band );
+ break;
+#endif
         }
+ break;
+
+#endif
+
+ case SIGABRT:
+ report_error( execution_exception::system_error,
+ "signal: SIGABRT (application abort requested)" );
+ break;
+
+ case SIGALRM:
+ report_error( execution_exception::timeout_error,
+ "signal: SIGALRM (timeout while executing function)" );
+ break;
+
+ default:
+ report_error( execution_exception::system_error, "unrecognized signal" );
     }
 }
 
@@ -638,6 +651,7 @@
 #ifdef BOOST_TEST_USE_ALT_STACK
     if( alt_stack ) {
         stack_t sigstk;
+ std::memset( &sigstk, 0, sizeof(stack_t) );
 
         BOOST_TEST_SYS_ASSERT( ::sigaltstack( 0, &sigstk ) != -1 );
 
@@ -661,8 +675,9 @@
         ::alarm( 0 );
 
 #ifdef BOOST_TEST_USE_ALT_STACK
- stack_t sigstk;
+ stack_t sigstk = {};
 
+ sigstk.ss_size = MINSIGSTKSZ;
     sigstk.ss_flags = SS_DISABLE;
     BOOST_TEST_SYS_ASSERT( ::sigaltstack( &sigstk, 0 ) != -1 );
 #endif
@@ -678,8 +693,23 @@
 
 extern "C" {
 
+static bool ignore_sigchild( siginfo_t* info )
+{
+ return info->si_signo == SIGCHLD && info->si_code == CLD_EXITED
+#ifdef BOOST_TEST_IGNORE_NON_ZERO_CHILD_CODE
+ ;
+#else
+ && (int)info->si_status == 0;
+#endif
+}
+
+//____________________________________________________________________________//
+
 static void execution_monitor_jumping_signal_handler( int sig, siginfo_t* info, void* context )
 {
+ if( ignore_sigchild( info ) )
+ return;
+
     signal_handler::sys_sig()( info, context );
 
     siglongjmp( signal_handler::jump_buffer(), sig );
@@ -689,8 +719,11 @@
 
 static void execution_monitor_attaching_signal_handler( int sig, siginfo_t* info, void* context )
 {
+ if( ignore_sigchild( info ) )
+ return;
+
     if( !debug::attach_debugger( false ) )
- execution_monitor_jumping_signal_handler( sig, info, context );
+ execution_monitor_jumping_signal_handler( sig, info, context );
 
     // debugger attached; it will handle the signal
     BOOST_TEST_SYS_ASSERT( ::signal( sig, SIG_DFL ) != SIG_ERR );
@@ -981,7 +1014,7 @@
 int
 execution_monitor::catch_signals( unit_test::callback0<int> const& F )
 {
- _invalid_parameter_handler old_iph;
+ _invalid_parameter_handler old_iph = _invalid_parameter_handler();
 
     if( !p_catch_system_errors )
         _set_se_translator( &detail::seh_catch_preventer );
@@ -1003,7 +1036,7 @@
 
     __try {
         __try {
- ret_val = detail::do_invoke( m_custom_translators , F );
+ ret_val = detail::do_invoke( m_custom_translators, F );
         }
         __except( SSE( GetExceptionCode(), GetExceptionInformation() ) ) {
             throw SSE;
@@ -1149,3 +1182,4 @@
 #include <boost/test/detail/enable_warnings.hpp>
 
 #endif // BOOST_TEST_EXECUTION_MONITOR_IPP_012205GER
+

Modified: branches/release/boost/test/impl/framework.ipp
==============================================================================
--- branches/release/boost/test/impl/framework.ipp (original)
+++ branches/release/boost/test/impl/framework.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -119,9 +119,14 @@
     , m_test_in_progress( false )
     {}
 
- ~framework_impl()
+ ~framework_impl() { clear(); }
+
+ void clear()
     {
- BOOST_TEST_FOREACH( test_unit_store::value_type const&, tu, m_test_units ) {
+ while( !m_test_units.empty() ) {
+ test_unit_store::value_type const& tu = *m_test_units.begin();
+
+ // the delete will erase this element from map
             if( test_id_2_unit_type( tu.second->p_id ) == tut_suite )
                 delete (test_suite const*)tu.second;
             else
@@ -190,7 +195,7 @@
     struct priority_order {
         bool operator()( test_observer* lhs, test_observer* rhs ) const
         {
- return (lhs->priority() < rhs->priority()) || (lhs->priority() == rhs->priority()) && (lhs < rhs);
+ return (lhs->priority() < rhs->priority()) || ((lhs->priority() == rhs->priority()) && (lhs < rhs));
         }
     };
 
@@ -316,6 +321,22 @@
 //____________________________________________________________________________//
 
 void
+deregister_test_unit( test_unit* tu )
+{
+ s_frk_impl().m_test_units.erase( tu->p_id );
+}
+
+//____________________________________________________________________________//
+
+void
+clear()
+{
+ s_frk_impl().clear();
+}
+
+//____________________________________________________________________________//
+
+void
 register_observer( test_observer& to )
 {
     s_frk_impl().m_observers.insert( &to );

Modified: branches/release/boost/test/impl/interaction_based.ipp
==============================================================================
--- branches/release/boost/test/impl/interaction_based.ipp (original)
+++ branches/release/boost/test/impl/interaction_based.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -18,10 +18,7 @@
 // Boost.Test
 #include <boost/test/detail/config.hpp>
 
-#if !BOOST_WORKAROUND(__GNUC__, < 3) && \
- !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564)) && \
- !BOOST_WORKAROUND(BOOST_MSVC, <1310) && \
- !BOOST_WORKAROUND(__SUNPRO_CC, BOOST_TESTED_AT(0x530))
+#if BOOST_TEST_SUPPORT_INTERACTION_TESTING
 
 // Boost.Test
 #include <boost/test/detail/config.hpp>

Modified: branches/release/boost/test/impl/logged_expectations.ipp
==============================================================================
--- branches/release/boost/test/impl/logged_expectations.ipp (original)
+++ branches/release/boost/test/impl/logged_expectations.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, ELOG_VER 1.0. (See accompanying file
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -18,10 +18,7 @@
 // Boost.Test
 #include <boost/test/detail/config.hpp>
 
-#if !BOOST_WORKAROUND(__GNUC__, < 3) && \
- !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564)) && \
- !BOOST_WORKAROUND(BOOST_MSVC, <1310) && \
- !BOOST_WORKAROUND(__SUNPRO_CC, BOOST_TESTED_AT(0x530))
+#if BOOST_TEST_SUPPORT_INTERACTION_TESTING
 
 #include <boost/test/detail/global_typedef.hpp>
 

Modified: branches/release/boost/test/impl/plain_report_formatter.ipp
==============================================================================
--- branches/release/boost/test/impl/plain_report_formatter.ipp (original)
+++ branches/release/boost/test/impl/plain_report_formatter.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -25,7 +25,7 @@
 
 // STL
 #include <iomanip>
-#include <cmath>
+#include <boost/config/no_tr1/cmath.hpp>
 #include <iostream>
 
 #include <boost/test/detail/suppress_warnings.hpp>

Modified: branches/release/boost/test/impl/progress_monitor.ipp
==============================================================================
--- branches/release/boost/test/impl/progress_monitor.ipp (original)
+++ branches/release/boost/test/impl/progress_monitor.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/impl/results_collector.ipp
==============================================================================
--- branches/release/boost/test/impl/results_collector.ipp (original)
+++ branches/release/boost/test/impl/results_collector.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/impl/results_reporter.ipp
==============================================================================
--- branches/release/boost/test/impl/results_reporter.ipp (original)
+++ branches/release/boost/test/impl/results_reporter.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/impl/test_main.ipp
==============================================================================
--- branches/release/boost/test/impl/test_main.ipp (original)
+++ branches/release/boost/test/impl/test_main.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // (C) Copyright Beman Dawes 1995-2001.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at

Modified: branches/release/boost/test/impl/test_tools.ipp
==============================================================================
--- branches/release/boost/test/impl/test_tools.ipp (original)
+++ branches/release/boost/test/impl/test_tools.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -33,9 +33,7 @@
 #include <cctype>
 #include <cwchar>
 #include <stdexcept>
-#ifdef BOOST_STANDARD_IOSTREAMS
 #include <ios>
-#endif
 
 // !! should we use #include <cstdarg>
 #include <stdarg.h>
@@ -55,14 +53,68 @@
 
 namespace test_tools {
 
+// ************************************************************************** //
+// ************** print_log_value ************** //
+// ************************************************************************** //
+
+void
+print_log_value<char>::operator()( std::ostream& ostr, char t )
+{
+ if( (std::isprint)( (unsigned char)t ) )
+ ostr << '\'' << t << '\'';
+ else
+ ostr << std::hex
+#if BOOST_TEST_USE_STD_LOCALE
+ << std::showbase
+#else
+ << "0x"
+#endif
+ << (int)t;
+}
+
+//____________________________________________________________________________//
+
+void
+print_log_value<unsigned char>::operator()( std::ostream& ostr, unsigned char t )
+{
+ ostr << std::hex
+ // showbase is only available for new style streams:
+#if BOOST_TEST_USE_STD_LOCALE
+ << std::showbase
+#else
+ << "0x"
+#endif
+ << (int)t;
+}
+
+//____________________________________________________________________________//
+
+void
+print_log_value<char const*>::operator()( std::ostream& ostr, char const* t )
+{
+ ostr << ( t ? t : "null string" );
+}
+
+//____________________________________________________________________________//
+
+void
+print_log_value<wchar_t const*>::operator()( std::ostream& ostr, wchar_t const* t )
+{
+ ostr << ( t ? t : L"null string" );
+}
+
+//____________________________________________________________________________//
+
 namespace tt_detail {
 
 // ************************************************************************** //
 // ************** TOOL BOX Implementation ************** //
 // ************************************************************************** //
 
-void
-check_impl( predicate_result const& pr, wrap_stringstream& check_descr,
+using ::boost::unit_test::lazy_ostream;
+
+bool
+check_impl( predicate_result const& pr, lazy_ostream const& check_descr,
             const_string file_name, std::size_t line_num,
             tool_level tl, check_type ct,
             std::size_t num_of_args, ... )
@@ -101,13 +153,13 @@
         suffix = " failed";
         break;
     default:
- return;
+ return true;
     }
 
     switch( ct ) {
     case CHECK_PRED:
         unit_test_log << unit_test::log::begin( file_name, line_num )
- << ll << prefix << check_descr.str() << suffix;
+ << ll << prefix << check_descr << suffix;
         
         if( !pr.has_empty_message() )
             unit_test_log << ". " << pr.message();
@@ -119,9 +171,9 @@
         unit_test_log << unit_test::log::begin( file_name, line_num ) << ll;
         
         if( tl == PASS )
- unit_test_log << prefix << "'" << check_descr.str() << "'" << suffix;
+ unit_test_log << prefix << "'" << check_descr << "'" << suffix;
         else
- unit_test_log << check_descr.str();
+ unit_test_log << check_descr;
         
         if( !pr.has_empty_message() )
             unit_test_log << ". " << pr.message();
@@ -141,16 +193,16 @@
         va_list args;
 
         va_start( args, num_of_args );
- char const* arg1_descr = va_arg( args, char const* );
- char const* arg1_val = va_arg( args, char const* );
- char const* arg2_descr = va_arg( args, char const* );
- char const* arg2_val = va_arg( args, char const* );
+ char const* arg1_descr = va_arg( args, char const* );
+ lazy_ostream const* arg1_val = va_arg( args, lazy_ostream const* );
+ char const* arg2_descr = va_arg( args, char const* );
+ lazy_ostream const* arg2_val = va_arg( args, lazy_ostream const* );
 
         unit_test_log << unit_test::log::begin( file_name, line_num )
                       << ll << prefix << arg1_descr << check_str[ct-CHECK_EQUAL] << arg2_descr << suffix;
 
         if( tl != PASS )
- unit_test_log << " [" << arg1_val << rever_str[ct-CHECK_EQUAL] << arg2_val << "]" ;
+ unit_test_log << " [" << *arg1_val << rever_str[ct-CHECK_EQUAL] << *arg2_val << "]" ;
 
         va_end( args );
         
@@ -166,19 +218,19 @@
         va_list args;
 
         va_start( args, num_of_args );
- char const* arg1_descr = va_arg( args, char const* );
- char const* arg1_val = va_arg( args, char const* );
- char const* arg2_descr = va_arg( args, char const* );
- char const* arg2_val = va_arg( args, char const* );
- /* toler_descr = */ va_arg( args, char const* );
- char const* toler_val = va_arg( args, char const* );
+ char const* arg1_descr = va_arg( args, char const* );
+ lazy_ostream const* arg1_val = va_arg( args, lazy_ostream const* );
+ char const* arg2_descr = va_arg( args, char const* );
+ lazy_ostream const* arg2_val = va_arg( args, lazy_ostream const* );
+ /* toler_descr = */ va_arg( args, char const* );
+ lazy_ostream const* toler_val = va_arg( args, lazy_ostream const* );
 
         unit_test_log << unit_test::log::begin( file_name, line_num ) << ll;
 
- unit_test_log << "difference between " << arg1_descr << "{" << arg1_val << "}"
- << " and " << arg2_descr << "{" << arg2_val << "}"
+ unit_test_log << "difference between " << arg1_descr << "{" << *arg1_val << "}"
+ << " and " << arg2_descr << "{" << *arg2_val << "}"
                       << ( tl == PASS ? " doesn't exceed " : " exceeds " )
- << toler_val;
+ << *toler_val;
         if( ct == CHECK_CLOSE )
             unit_test_log << "%";
 
@@ -194,16 +246,16 @@
         va_list args;
 
         va_start( args, num_of_args );
- char const* arg1_descr = va_arg( args, char const* );
- char const* arg1_val = va_arg( args, char const* );
- /* toler_descr = */ va_arg( args, char const* );
- char const* toler_val = va_arg( args, char const* );
+ char const* arg1_descr = va_arg( args, char const* );
+ lazy_ostream const* arg1_val = va_arg( args, lazy_ostream const* );
+ /* toler_descr = */ va_arg( args, char const* );
+ lazy_ostream const* toler_val = va_arg( args, lazy_ostream const* );
 
         unit_test_log << unit_test::log::begin( file_name, line_num ) << ll;
 
- unit_test_log << "absolute value of " << arg1_descr << "{" << arg1_val << "}"
+ unit_test_log << "absolute value of " << arg1_descr << "{" << *arg1_val << "}"
                       << ( tl == PASS ? " doesn't exceed " : " exceeds " )
- << toler_val;
+ << *toler_val;
 
         va_end( args );
         
@@ -216,7 +268,7 @@
 
     case CHECK_PRED_WITH_ARGS: {
         unit_test_log << unit_test::log::begin( file_name, line_num )
- << ll << prefix << check_descr.str();
+ << ll << prefix << check_descr;
 
         // print predicate call description
         {
@@ -226,7 +278,7 @@
             unit_test_log << "( ";
             for( std::size_t i = 0; i < num_of_args; ++i ) {
                 unit_test_log << va_arg( args, char const* );
- va_arg( args, char const* ); // skip argument value;
+ va_arg( args, lazy_ostream const* ); // skip argument value;
                 
                 if( i != num_of_args-1 )
                     unit_test_log << ", ";
@@ -242,7 +294,7 @@
             unit_test_log << " for ( ";
             for( std::size_t i = 0; i < num_of_args; ++i ) {
                 va_arg( args, char const* ); // skip argument description;
- unit_test_log << va_arg( args, char const* );
+ unit_test_log << *va_arg( args, lazy_ostream const* );
                 
                 if( i != num_of_args-1 )
                     unit_test_log << ", ";
@@ -305,14 +357,14 @@
     switch( tl ) {
     case PASS:
         framework::assertion_result( true );
- break;
+ return true;
 
     case WARN:
- break;
+ return false;
 
     case CHECK:
         framework::assertion_result( false );
- break;
+ return false;
         
     case REQUIRE:
         framework::assertion_result( false );
@@ -321,6 +373,8 @@
 
         throw execution_aborted();
     }
+
+ return true;
 }
 
 //____________________________________________________________________________//
@@ -354,59 +408,6 @@
 
 //____________________________________________________________________________//
 
-// ************************************************************************** //
-// ************** log print helper ************** //
-// ************************************************************************** //
-
-void
-print_log_value<char>::operator()( std::ostream& ostr, char t )
-{
- if( (std::isprint)( (unsigned char)t ) )
- ostr << '\'' << t << '\'';
- else
- ostr << std::hex
- // showbase is only available for new style streams:
-#ifndef BOOST_NO_STD_LOCALE
- << std::showbase
-#else
- << "0x"
-#endif
- << (int)t;
-}
-
-//____________________________________________________________________________//
-
-void
-print_log_value<unsigned char>::operator()( std::ostream& ostr, unsigned char t )
-{
- ostr << std::hex
- // showbase is only available for new style streams:
-#ifndef BOOST_NO_STD_LOCALE
- << std::showbase
-#else
- << "0x"
-#endif
- << (int)t;
-}
-
-//____________________________________________________________________________//
-
-void
-print_log_value<char const*>::operator()( std::ostream& ostr, char const* t )
-{
- ostr << ( t ? t : "null string" );
-}
-
-//____________________________________________________________________________//
-
-void
-print_log_value<wchar_t const*>::operator()( std::ostream& ostr, wchar_t const* t )
-{
- ostr << ( t ? t : L"null string" );
-}
-
-//____________________________________________________________________________//
-
 } // namespace tt_detail
 
 // ************************************************************************** //
@@ -527,7 +528,7 @@
 
     if( !m_pimpl->m_pattern.is_open() ) {
         result = false;
- result.message() << "Pattern file could not be open!";
+ result.message() << "Pattern file could not be opened!";
     }
     else {
         if( m_pimpl->m_match_or_save ) {

Modified: branches/release/boost/test/impl/unit_test_log.ipp
==============================================================================
--- branches/release/boost/test/impl/unit_test_log.ipp (original)
+++ branches/release/boost/test/impl/unit_test_log.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -50,15 +50,22 @@
 
 namespace ut_detail {
 
-entry_value_collector
-entry_value_collector::operator<<( const_string v )
+entry_value_collector const&
+entry_value_collector::operator<<( lazy_ostream const& v ) const
 {
     unit_test_log << v;
 
- m_last = false;
+ return *this;
+}
 
- entry_value_collector res;
- return res;
+//____________________________________________________________________________//
+
+entry_value_collector const&
+entry_value_collector::operator<<( const_string v ) const
+{
+ unit_test_log << v;
+
+ return *this;
 }
 
 //____________________________________________________________________________//
@@ -303,8 +310,49 @@
 {
     *this << l;
 
- ut_detail::entry_value_collector res;
- return res;
+ return ut_detail::entry_value_collector();
+}
+
+//____________________________________________________________________________//
+
+bool
+unit_test_log_t::log_entry_start()
+{
+ if( s_log_impl().m_entry_in_progress )
+ return true;
+
+ switch( s_log_impl().m_entry_data.m_level ) {
+ case log_successful_tests:
+ s_log_impl().m_log_formatter->log_entry_start( s_log_impl().stream(), s_log_impl().m_entry_data,
+ unit_test_log_formatter::BOOST_UTL_ET_INFO );
+ break;
+ case log_messages:
+ s_log_impl().m_log_formatter->log_entry_start( s_log_impl().stream(), s_log_impl().m_entry_data,
+ unit_test_log_formatter::BOOST_UTL_ET_MESSAGE );
+ break;
+ case log_warnings:
+ s_log_impl().m_log_formatter->log_entry_start( s_log_impl().stream(), s_log_impl().m_entry_data,
+ unit_test_log_formatter::BOOST_UTL_ET_WARNING );
+ break;
+ case log_all_errors:
+ case log_cpp_exception_errors:
+ case log_system_errors:
+ s_log_impl().m_log_formatter->log_entry_start( s_log_impl().stream(), s_log_impl().m_entry_data,
+ unit_test_log_formatter::BOOST_UTL_ET_ERROR );
+ break;
+ case log_fatal_errors:
+ s_log_impl().m_log_formatter->log_entry_start( s_log_impl().stream(), s_log_impl().m_entry_data,
+ unit_test_log_formatter::BOOST_UTL_ET_FATAL_ERROR );
+ break;
+ case log_nothing:
+ case log_test_units:
+ case invalid_log_level:
+ return false;
+ }
+
+ s_log_impl().m_entry_in_progress = true;
+
+ return true;
 }
 
 //____________________________________________________________________________//
@@ -312,42 +360,19 @@
 unit_test_log_t&
 unit_test_log_t::operator<<( const_string value )
 {
- if( s_log_impl().m_entry_data.m_level >= s_log_impl().m_threshold_level && !value.empty() ) {
- if( !s_log_impl().m_entry_in_progress ) {
- s_log_impl().m_entry_in_progress = true;
-
- switch( s_log_impl().m_entry_data.m_level ) {
- case log_successful_tests:
- s_log_impl().m_log_formatter->log_entry_start( s_log_impl().stream(), s_log_impl().m_entry_data,
- unit_test_log_formatter::BOOST_UTL_ET_INFO );
- break;
- case log_messages:
- s_log_impl().m_log_formatter->log_entry_start( s_log_impl().stream(), s_log_impl().m_entry_data,
- unit_test_log_formatter::BOOST_UTL_ET_MESSAGE );
- break;
- case log_warnings:
- s_log_impl().m_log_formatter->log_entry_start( s_log_impl().stream(), s_log_impl().m_entry_data,
- unit_test_log_formatter::BOOST_UTL_ET_WARNING );
- break;
- case log_all_errors:
- case log_cpp_exception_errors:
- case log_system_errors:
- s_log_impl().m_log_formatter->log_entry_start( s_log_impl().stream(), s_log_impl().m_entry_data,
- unit_test_log_formatter::BOOST_UTL_ET_ERROR );
- break;
- case log_fatal_errors:
- s_log_impl().m_log_formatter->log_entry_start( s_log_impl().stream(), s_log_impl().m_entry_data,
- unit_test_log_formatter::BOOST_UTL_ET_FATAL_ERROR );
- break;
- case log_nothing:
- case log_test_units:
- case invalid_log_level:
- return *this;
- }
- }
+ if( s_log_impl().m_entry_data.m_level >= s_log_impl().m_threshold_level && !value.empty() && log_entry_start() )
+ s_log_impl().m_log_formatter->log_entry_value( s_log_impl().stream(), value );
 
+ return *this;
+}
+
+//____________________________________________________________________________//
+
+unit_test_log_t&
+unit_test_log_t::operator<<( lazy_ostream const& value )
+{
+ if( s_log_impl().m_entry_data.m_level >= s_log_impl().m_threshold_level && !value.empty() && log_entry_start() )
         s_log_impl().m_log_formatter->log_entry_value( s_log_impl().stream(), value );
- }
 
     return *this;
 }
@@ -399,6 +424,18 @@
 
 //____________________________________________________________________________//
 
+// ************************************************************************** //
+// ************** unit_test_log_formatter ************** //
+// ************************************************************************** //
+
+void
+unit_test_log_formatter::log_entry_value( std::ostream& ostr, lazy_ostream const& value )
+{
+ log_entry_value( ostr, (wrap_stringstream().ref() << value).str() );
+}
+
+//____________________________________________________________________________//
+
 } // namespace unit_test
 
 } // namespace boost

Modified: branches/release/boost/test/impl/unit_test_main.ipp
==============================================================================
--- branches/release/boost/test/impl/unit_test_main.ipp (original)
+++ branches/release/boost/test/impl/unit_test_main.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -23,7 +23,7 @@
 
 #include <boost/test/detail/unit_test_parameters.hpp>
 
-#if !defined(__BORLANDC__) && BOOST_WORKAROUND( BOOST_MSVC, >= 1300 )
+#if !defined(__BORLANDC__) && !BOOST_WORKAROUND( BOOST_MSVC, < 1300 )
 #include <boost/test/utils/iterator/token_iterator.hpp>
 #endif
 
@@ -100,10 +100,12 @@
         const_string m_value;
     };
     // Constructor
+#if defined(__BORLANDC__) || BOOST_WORKAROUND( BOOST_MSVC, < 1300 )
+ explicit test_case_filter( const_string ) : m_depth( 0 ) {}
+#else
     explicit test_case_filter( const_string tc_to_tun )
     : m_depth( 0 )
     {
-#if !defined(__BORLANDC__) && BOOST_WORKAROUND( BOOST_MSVC, >= 1300 )
         string_token_iterator tit( tc_to_tun, (dropped_delimeters = "/", kept_delimeters = dt_none) );
 
         while( tit != string_token_iterator() ) {
@@ -113,8 +115,8 @@
 
             ++tit;
         }
-#endif
     }
+#endif
     
     void filter_unit( test_unit const& tu )
     {
@@ -129,12 +131,17 @@
         std::vector<single_filter> const& filters = m_filters[m_depth-2];
 
         tu.p_enabled.value =
- std::find_if( filters.begin(), filters.end(), bind( &single_filter::pass, _1, tu ) ) != filters.end();
+ std::find_if( filters.begin(), filters.end(), bind( &single_filter::pass, _1, boost::ref(tu) ) ) != filters.end();
     }
 
     // test tree visitor interface
     virtual void visit( test_case const& tc )
     {
+ if( m_depth < m_filters.size() ) {
+ tc.p_enabled.value = false;
+ return;
+ }
+
         filter_unit( tc );
 
         --m_depth;

Modified: branches/release/boost/test/impl/unit_test_monitor.ipp
==============================================================================
--- branches/release/boost/test/impl/unit_test_monitor.ipp (original)
+++ branches/release/boost/test/impl/unit_test_monitor.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/impl/unit_test_parameters.ipp
==============================================================================
--- branches/release/boost/test/impl/unit_test_parameters.ipp (original)
+++ branches/release/boost/test/impl/unit_test_parameters.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -208,7 +208,11 @@
     s_save_pattern = retrieve_framework_parameter( SAVE_TEST_PATTERN, argc, argv ) == "yes";
     s_show_build_info = retrieve_framework_parameter( BUILD_INFO, argc, argv ) == "yes";
     s_show_progress = retrieve_framework_parameter( SHOW_PROGRESS, argc, argv ) == "yes";
+#ifdef BOOST_TEST_DEFAULTS_TO_CORE_DUMP
+ s_catch_sys_errors = retrieve_framework_parameter( CATCH_SYS_ERRORS, argc, argv ) == "yes";
+#else
     s_catch_sys_errors = retrieve_framework_parameter( CATCH_SYS_ERRORS, argc, argv ) != "no";
+#endif
     s_use_alt_stack = retrieve_framework_parameter( USE_ALT_STACK, argc, argv ) != "no";
     s_detect_fp_except = retrieve_framework_parameter( DETECT_FP_EXCEPT, argc, argv ) == "yes";
     s_tests_to_run = retrieve_framework_parameter( TESTS_TO_RUN, argc, argv );

Modified: branches/release/boost/test/impl/unit_test_suite.ipp
==============================================================================
--- branches/release/boost/test/impl/unit_test_suite.ipp (original)
+++ branches/release/boost/test/impl/unit_test_suite.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -60,6 +60,13 @@
 
 //____________________________________________________________________________//
 
+test_unit::~test_unit()
+{
+ framework::deregister_test_unit( this );
+}
+
+//____________________________________________________________________________//
+
 void
 test_unit::depends_on( test_unit* tu )
 {

Modified: branches/release/boost/test/impl/xml_log_formatter.ipp
==============================================================================
--- branches/release/boost/test/impl/xml_log_formatter.ipp (original)
+++ branches/release/boost/test/impl/xml_log_formatter.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -112,8 +112,7 @@
 void
 xml_log_formatter::log_exception( std::ostream& ostr, log_checkpoint_data const& checkpoint_data, const_string explanation )
 {
- ostr << "<Exception name" << attr_value() << framework::current_test_case().p_name.get() << ">"
- << pcdata() << explanation;
+ ostr << "<Exception>" << pcdata() << explanation;
 
     if( !checkpoint_data.m_file_name.is_empty() ) {
         ostr << "<LastCheckpoint file" << attr_value() << checkpoint_data.m_file_name

Modified: branches/release/boost/test/impl/xml_report_formatter.ipp
==============================================================================
--- branches/release/boost/test/impl/xml_report_formatter.ipp (original)
+++ branches/release/boost/test/impl/xml_report_formatter.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/included/prg_exec_monitor.hpp
==============================================================================
--- branches/release/boost/test/included/prg_exec_monitor.hpp (original)
+++ branches/release/boost/test/included/prg_exec_monitor.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/included/test_exec_monitor.hpp
==============================================================================
--- branches/release/boost/test/included/test_exec_monitor.hpp (original)
+++ branches/release/boost/test/included/test_exec_monitor.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/included/unit_test.hpp
==============================================================================
--- branches/release/boost/test/included/unit_test.hpp (original)
+++ branches/release/boost/test/included/unit_test.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/interaction_based.hpp
==============================================================================
--- branches/release/boost/test/interaction_based.hpp (original)
+++ branches/release/boost/test/interaction_based.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -201,6 +201,9 @@
 # ifdef BOOST_NO_STDC_NAMESPACE
 namespace std { using ::malloc; using ::free; }
 # endif
+# ifdef _CRTDBG_MAP_ALLOC
+namespace std { using ::_malloc_dbg; using ::_free_dbg; }
+# endif
 
 inline void*
 operator new( std::size_t s, ::boost::itest::location const& l )

Modified: branches/release/boost/test/logged_expectations.hpp
==============================================================================
--- branches/release/boost/test/logged_expectations.hpp (original)
+++ branches/release/boost/test/logged_expectations.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -43,7 +43,7 @@
                                                                         \
 struct BOOST_AUTO_TC_UNIQUE_ID( test_name ) {}; \
                                                                         \
-BOOST_AUTO_TC_REGISTRAR( test_name )( \
+BOOST_AUTO_TU_REGISTRAR( test_name )( \
     boost::unit_test::make_test_case( \
         &BOOST_AUTO_TC_INVOKER( test_name ), #test_name ), \
     boost::unit_test::ut_detail::auto_tc_exp_fail< \

Modified: branches/release/boost/test/minimal.hpp
==============================================================================
--- branches/release/boost/test/minimal.hpp (original)
+++ branches/release/boost/test/minimal.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2002-2007.
+// (C) Copyright Gennadiy Rozental 2002-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/mock_object.hpp
==============================================================================
--- branches/release/boost/test/mock_object.hpp (original)
+++ branches/release/boost/test/mock_object.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/output/compiler_log_formatter.hpp
==============================================================================
--- branches/release/boost/test/output/compiler_log_formatter.hpp (original)
+++ branches/release/boost/test/output/compiler_log_formatter.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -48,6 +48,7 @@
 
     void log_entry_start( std::ostream&, log_entry_data const&, log_entry_types let );
     void log_entry_value( std::ostream&, const_string value );
+ void log_entry_value( std::ostream&, lazy_ostream const& value );
     void log_entry_finish( std::ostream& );
 
 protected:

Modified: branches/release/boost/test/output/plain_report_formatter.hpp
==============================================================================
--- branches/release/boost/test/output/plain_report_formatter.hpp (original)
+++ branches/release/boost/test/output/plain_report_formatter.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/output/xml_log_formatter.hpp
==============================================================================
--- branches/release/boost/test/output/xml_log_formatter.hpp (original)
+++ branches/release/boost/test/output/xml_log_formatter.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -50,6 +50,7 @@
     void log_exception( std::ostream&, log_checkpoint_data const&, const_string explanation );
 
     void log_entry_start( std::ostream&, log_entry_data const&, log_entry_types let );
+ using unit_test_log_formatter::log_entry_value; // bring base class functions into overload set
     void log_entry_value( std::ostream&, const_string value );
     void log_entry_finish( std::ostream& );
 

Modified: branches/release/boost/test/output/xml_report_formatter.hpp
==============================================================================
--- branches/release/boost/test/output/xml_report_formatter.hpp (original)
+++ branches/release/boost/test/output/xml_report_formatter.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/output_test_stream.hpp
==============================================================================
--- branches/release/boost/test/output_test_stream.hpp (original)
+++ branches/release/boost/test/output_test_stream.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/parameterized_test.hpp
==============================================================================
--- branches/release/boost/test/parameterized_test.hpp (original)
+++ branches/release/boost/test/parameterized_test.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/predicate_result.hpp
==============================================================================
--- branches/release/boost/test/predicate_result.hpp (original)
+++ branches/release/boost/test/predicate_result.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/prg_exec_monitor.hpp
==============================================================================
--- branches/release/boost/test/prg_exec_monitor.hpp (original)
+++ branches/release/boost/test/prg_exec_monitor.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/progress_monitor.hpp
==============================================================================
--- branches/release/boost/test/progress_monitor.hpp (original)
+++ branches/release/boost/test/progress_monitor.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/results_collector.hpp
==============================================================================
--- branches/release/boost/test/results_collector.hpp (original)
+++ branches/release/boost/test/results_collector.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/results_reporter.hpp
==============================================================================
--- branches/release/boost/test/results_reporter.hpp (original)
+++ branches/release/boost/test/results_reporter.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/test_case_template.hpp
==============================================================================
--- branches/release/boost/test/test_case_template.hpp (original)
+++ branches/release/boost/test/test_case_template.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2003-2007.
+// (C) Copyright Gennadiy Rozental 2003-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -16,9 +16,6 @@
 #ifndef BOOST_TEST_TEST_CASE_TEMPLATE_HPP_071894GER
 #define BOOST_TEST_TEST_CASE_TEMPLATE_HPP_071894GER
 
-// Boost.Test
-#include <boost/test/unit_test_suite.hpp>
-
 // Boost
 #include <boost/mpl/for_each.hpp>
 #include <boost/mpl/identity.hpp>

Modified: branches/release/boost/test/test_exec_monitor.hpp
==============================================================================
--- branches/release/boost/test/test_exec_monitor.hpp (original)
+++ branches/release/boost/test/test_exec_monitor.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/test_observer.hpp
==============================================================================
--- branches/release/boost/test/test_observer.hpp (original)
+++ branches/release/boost/test/test_observer.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/test_tools.hpp
==============================================================================
--- branches/release/boost/test/test_tools.hpp (original)
+++ branches/release/boost/test/test_tools.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -18,6 +18,7 @@
 // Boost.Test
 #include <boost/test/predicate_result.hpp>
 #include <boost/test/unit_test_log.hpp>
+#include <boost/test/floating_point_comparison.hpp>
 
 #include <boost/test/detail/config.hpp>
 #include <boost/test/detail/global_typedef.hpp>
@@ -25,6 +26,7 @@
 
 #include <boost/test/utils/wrap_stringstream.hpp>
 #include <boost/test/utils/basic_cstring/io.hpp>
+#include <boost/test/utils/lazy_ostream.hpp>
 
 // Boost
 #include <boost/preprocessor/seq/for_each.hpp>
@@ -33,6 +35,7 @@
 #include <boost/preprocessor/repetition/repeat.hpp>
 #include <boost/preprocessor/punctuation/comma_if.hpp>
 #include <boost/preprocessor/arithmetic/add.hpp>
+
 #include <boost/limits.hpp>
 
 #include <boost/type_traits/is_array.hpp>
@@ -44,8 +47,13 @@
 // STL
 #include <cstddef> // for std::size_t
 #include <iosfwd>
+#include <ios> // for std::boolalpha
 #include <climits> // for CHAR_BIT
 
+#ifdef BOOST_MSVC
+# pragma warning(disable: 4127) // conditional expression is constant
+#endif
+
 #include <boost/test/detail/suppress_warnings.hpp>
 
 //____________________________________________________________________________//
@@ -65,14 +73,14 @@
 // CT - check type
 // ARGS - arguments list
 
-#define BOOST_TEST_TOOL_IMPL( func, P, check_descr, TL, CT ) \
- ::boost::test_tools::tt_detail::func( \
- P, \
- ::boost::wrap_stringstream().ref() << check_descr, \
- BOOST_TEST_L(__FILE__), \
- (std::size_t)__LINE__, \
- ::boost::test_tools::tt_detail::TL, \
- ::boost::test_tools::tt_detail::CT \
+#define BOOST_TEST_TOOL_IMPL( func, P, check_descr, TL, CT ) \
+ ::boost::test_tools::tt_detail::func( \
+ P, \
+ ::boost::unit_test::lazy_ostream::instance() << check_descr, \
+ BOOST_TEST_L(__FILE__), \
+ (std::size_t)__LINE__, \
+ ::boost::test_tools::tt_detail::TL, \
+ ::boost::test_tools::tt_detail::CT \
 /**/
 
 //____________________________________________________________________________//
@@ -298,43 +306,19 @@
 
 typedef unit_test::const_string const_string;
 
-namespace { bool dummy_cond = false; }
-
-namespace tt_detail {
-
-// ************************************************************************** //
-// ************** tools classification ************** //
-// ************************************************************************** //
-
-enum check_type {
- CHECK_PRED,
- CHECK_MSG,
- CHECK_EQUAL,
- CHECK_NE,
- CHECK_LT,
- CHECK_LE,
- CHECK_GT,
- CHECK_GE,
- CHECK_CLOSE,
- CHECK_CLOSE_FRACTION,
- CHECK_SMALL,
- CHECK_BITWISE_EQUAL,
- CHECK_PRED_WITH_ARGS,
- CHECK_EQUAL_COLL
-};
-
-enum tool_level {
- WARN, CHECK, REQUIRE, PASS
-};
+namespace { bool const dummy_cond = false; }
 
 // ************************************************************************** //
-// ************** log print helper ************** //
+// ************** print_log_value ************** //
 // ************************************************************************** //
 
 template<typename T>
 struct print_log_value {
     void operator()( std::ostream& ostr, T const& t )
     {
+ // avoid warning: 'boost::test_tools::<unnamed>::dummy_cond' defined but not used
+ if (::boost::test_tools::dummy_cond) {}
+
         typedef typename mpl::or_<is_array<T>,is_function<T>,is_abstract<T> >::type couldnt_use_nl;
 
         set_precision( ostr, couldnt_use_nl() );
@@ -353,13 +337,13 @@
 
 //____________________________________________________________________________//
 
-#define BOOST_TEST_DONT_PRINT_LOG_VALUE( the_type ) \
-namespace boost { namespace test_tools { namespace tt_detail { \
-template<> \
-struct print_log_value<the_type > { \
- void operator()( std::ostream& ostr, the_type const& t ) {} \
-}; \
-}}} \
+#define BOOST_TEST_DONT_PRINT_LOG_VALUE( the_type ) \
+namespace boost { namespace test_tools { \
+template<> \
+struct print_log_value<the_type > { \
+ void operator()( std::ostream&, the_type const& ) {} \
+}; \
+}} \
 /**/
 
 //____________________________________________________________________________//
@@ -377,6 +361,16 @@
 //____________________________________________________________________________//
 
 template<>
+struct BOOST_TEST_DECL print_log_value<bool> {
+ void operator()( std::ostream& ostr, bool t )
+ {
+ ostr << std::boolalpha << t;
+ }
+};
+
+//____________________________________________________________________________//
+
+template<>
 struct BOOST_TEST_DECL print_log_value<char> {
     void operator()( std::ostream& ostr, char t );
 };
@@ -404,6 +398,39 @@
 
 //____________________________________________________________________________//
 
+namespace tt_detail {
+
+// ************************************************************************** //
+// ************** tools classification ************** //
+// ************************************************************************** //
+
+enum check_type {
+ CHECK_PRED,
+ CHECK_MSG,
+ CHECK_EQUAL,
+ CHECK_NE,
+ CHECK_LT,
+ CHECK_LE,
+ CHECK_GT,
+ CHECK_GE,
+ CHECK_CLOSE,
+ CHECK_CLOSE_FRACTION,
+ CHECK_SMALL,
+ CHECK_BITWISE_EQUAL,
+ CHECK_PRED_WITH_ARGS,
+ CHECK_EQUAL_COLL
+};
+
+enum tool_level {
+ WARN, CHECK, REQUIRE, PASS
+};
+
+// ************************************************************************** //
+// ************** print_helper ************** //
+// ************************************************************************** //
+// Adds level of indirection to the output operation, allowing us to customize
+// it for types that do not support operator << directly or for any other reason
+
 template<typename T>
 struct print_helper_t {
     explicit print_helper_t( T const& t ) : m_t( t ) {}
@@ -449,7 +476,7 @@
 // ************************************************************************** //
 
 BOOST_TEST_DECL
-void check_impl( predicate_result const& pr, wrap_stringstream& check_descr,
+bool check_impl( predicate_result const& pr, ::boost::unit_test::lazy_ostream const& check_descr,
                  const_string file_name, std::size_t line_num,
                  tool_level tl, check_type ct,
                  std::size_t num_args, ... );
@@ -466,21 +493,21 @@
 
 #define ARG_INFO( z, m, dummy ) \
     , BOOST_JOIN( BOOST_JOIN( arg, m ), _descr ) \
- , (boost::wrap_stringstream().ref() \
- << ::boost::test_tools::tt_detail:: \
- print_helper( BOOST_JOIN( arg, m ) )).str().c_str() \
+ , &(const unit_test::lazy_ostream&)(unit_test::lazy_ostream::instance() \
+ << ::boost::test_tools::tt_detail::print_helper( BOOST_JOIN( arg, m ) )) \
 /**/
 
 #define IMPL_FRWD( z, n, dummy ) \
 template<typename Pred \
          BOOST_PP_REPEAT_ ## z( BOOST_PP_ADD( n, 1 ), TEMPL_PARAMS, _ )> \
-inline void \
-check_frwd( Pred P, wrap_stringstream& check_descr, \
+inline bool \
+check_frwd( Pred P, unit_test::lazy_ostream const& check_descr, \
             const_string file_name, std::size_t line_num, \
             tool_level tl, check_type ct \
             BOOST_PP_REPEAT_ ## z( BOOST_PP_ADD( n, 1 ), FUNC_PARAMS, _ ) \
 ) \
 { \
+ return \
     check_impl( P( BOOST_PP_REPEAT_ ## z( BOOST_PP_ADD( n, 1 ), PRED_PARAMS, _ ) ), \
                 check_descr, file_name, line_num, tl, ct, \
                 BOOST_PP_ADD( n, 1 ) \

Modified: branches/release/boost/test/unit_test.hpp
==============================================================================
--- branches/release/boost/test/unit_test.hpp (original)
+++ branches/release/boost/test/unit_test.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/unit_test_log.hpp
==============================================================================
--- branches/release/boost/test/unit_test_log.hpp (original)
+++ branches/release/boost/test/unit_test_log.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -26,6 +26,7 @@
 
 #include <boost/test/utils/wrap_stringstream.hpp>
 #include <boost/test/utils/trivial_singleton.hpp>
+#include <boost/test/utils/lazy_ostream.hpp>
 
 // Boost
 #include <boost/utility.hpp>
@@ -71,15 +72,16 @@
 public:
     // Constructors
     entry_value_collector() : m_last( true ) {}
- entry_value_collector( entry_value_collector& rhs ) : m_last( true ) { rhs.m_last = false; }
+ entry_value_collector( entry_value_collector const& rhs ) : m_last( true ) { rhs.m_last = false; }
     ~entry_value_collector();
 
     // collection interface
- entry_value_collector operator<<( const_string );
+ entry_value_collector const& operator<<( lazy_ostream const& ) const;
+ entry_value_collector const& operator<<( const_string ) const;
 
 private:
     // Data members
- bool m_last;
+ mutable bool m_last;
 };
 
 } // namespace ut_detail
@@ -119,10 +121,13 @@
     unit_test_log_t& operator<<( log::end const& ); // end entry
     unit_test_log_t& operator<<( log_level ); // set entry level
     unit_test_log_t& operator<<( const_string ); // log entry value
+ unit_test_log_t& operator<<( lazy_ostream const& ); // log entry value
 
     ut_detail::entry_value_collector operator()( log_level ); // initiate entry collection
 
 private:
+ bool log_entry_start();
+
     BOOST_TEST_SINGLETON_CONS( unit_test_log_t );
 }; // unit_test_log_t
 
@@ -144,24 +149,24 @@
 
 #define BOOST_TEST_MESSAGE( M ) \
     BOOST_TEST_LOG_ENTRY( ::boost::unit_test::log_messages ) \
- << (boost::wrap_stringstream().ref() << M).str() \
+ << (::boost::unit_test::lazy_ostream::instance() << M) \
 /**/
 
 //____________________________________________________________________________//
 
-#define BOOST_TEST_PASSPOINT() \
- ::boost::unit_test::unit_test_log.set_checkpoint( \
- BOOST_TEST_L(__FILE__), \
- (std::size_t)__LINE__ ) \
+#define BOOST_TEST_PASSPOINT() \
+ ::boost::unit_test::unit_test_log.set_checkpoint( \
+ BOOST_TEST_L(__FILE__), \
+ (std::size_t)__LINE__ ) \
 /**/
 
 //____________________________________________________________________________//
 
-#define BOOST_TEST_CHECKPOINT( M ) \
- ::boost::unit_test::unit_test_log.set_checkpoint( \
- BOOST_TEST_L(__FILE__), \
- (std::size_t)__LINE__, \
- (boost::wrap_stringstream().ref() << M).str() ) \
+#define BOOST_TEST_CHECKPOINT( M ) \
+ ::boost::unit_test::unit_test_log.set_checkpoint( \
+ BOOST_TEST_L(__FILE__), \
+ (std::size_t)__LINE__, \
+ (::boost::wrap_stringstream().ref() << M).str() ) \
 /**/
 
 //____________________________________________________________________________//

Modified: branches/release/boost/test/unit_test_log_formatter.hpp
==============================================================================
--- branches/release/boost/test/unit_test_log_formatter.hpp (original)
+++ branches/release/boost/test/unit_test_log_formatter.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2003-2007.
+// (C) Copyright Gennadiy Rozental 2003-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -100,6 +100,7 @@
 
     virtual void log_entry_start( std::ostream&, log_entry_data const&, log_entry_types let ) = 0;
     virtual void log_entry_value( std::ostream&, const_string value ) = 0;
+ virtual void log_entry_value( std::ostream&, lazy_ostream const& value ); // there is a default impl
     virtual void log_entry_finish( std::ostream& ) = 0;
 };
 

Modified: branches/release/boost/test/unit_test_monitor.hpp
==============================================================================
--- branches/release/boost/test/unit_test_monitor.hpp (original)
+++ branches/release/boost/test/unit_test_monitor.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/unit_test_suite.hpp
==============================================================================
--- branches/release/boost/test/unit_test_suite.hpp (original)
+++ branches/release/boost/test/unit_test_suite.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -17,6 +17,7 @@
 
 // Boost.Test
 #include <boost/test/unit_test_suite_impl.hpp>
+#include <boost/test/test_case_template.hpp>
 #include <boost/test/framework.hpp>
 
 //____________________________________________________________________________//

Modified: branches/release/boost/test/unit_test_suite_impl.hpp
==============================================================================
--- branches/release/boost/test/unit_test_suite_impl.hpp (original)
+++ branches/release/boost/test/unit_test_suite_impl.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -71,6 +71,9 @@
 
     void increase_exp_fail( unsigned num );
 
+protected:
+ ~test_unit();
+
 private:
     // Data members
     std::list<test_unit_id> m_dependencies;
@@ -226,15 +229,15 @@
 
 template<typename InstanceType,typename UserTestCase>
 struct user_tc_method_invoker {
- typedef void (UserTestCase::*test_method )();
+ typedef void (UserTestCase::*TestMethod )();
 
- user_tc_method_invoker( shared_ptr<InstanceType> inst, test_method test_method )
+ user_tc_method_invoker( shared_ptr<InstanceType> inst, TestMethod test_method )
     : m_inst( inst ), m_test_method( test_method ) {}
 
     void operator()() { ((*m_inst).*m_test_method)(); }
 
     shared_ptr<InstanceType> m_inst;
- test_method m_test_method;
+ TestMethod m_test_method;
 };
 
 } // namespace ut_detail

Modified: branches/release/boost/test/utils/algorithm.hpp
==============================================================================
--- branches/release/boost/test/utils/algorithm.hpp (original)
+++ branches/release/boost/test/utils/algorithm.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2004-2007.
+// (C) Copyright Gennadiy Rozental 2004-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/assign_op.hpp
==============================================================================
--- branches/release/boost/test/utils/assign_op.hpp (original)
+++ branches/release/boost/test/utils/assign_op.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/basic_cstring/basic_cstring.hpp
==============================================================================
--- branches/release/boost/test/utils/basic_cstring/basic_cstring.hpp (original)
+++ branches/release/boost/test/utils/basic_cstring/basic_cstring.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2004-2007.
+// (C) Copyright Gennadiy Rozental 2004-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -511,16 +511,16 @@
 
 template<typename CharT>
 inline typename basic_cstring<CharT>::size_type
-basic_cstring<CharT>::find( basic_cstring<CharT> substr ) const
+basic_cstring<CharT>::find( basic_cstring<CharT> str ) const
 {
- if( substr.is_empty() || substr.size() > size() )
+ if( str.is_empty() || str.size() > size() )
         return (size_type)npos;
 
     const_iterator it = begin();
- const_iterator last = end() - substr.size() + 1;
+ const_iterator last = end() - str.size() + 1;
 
     while( it != last ) {
- if( traits_type::compare( it, substr.begin(), substr.size() ) == 0 )
+ if( traits_type::compare( it, str.begin(), str.size() ) == 0 )
             break;
 
         ++it;
@@ -533,16 +533,16 @@
 
 template<typename CharT>
 inline typename basic_cstring<CharT>::size_type
-basic_cstring<CharT>::rfind( basic_cstring<CharT> substr ) const
+basic_cstring<CharT>::rfind( basic_cstring<CharT> str ) const
 {
- if( substr.is_empty() || substr.size() > size() )
+ if( str.is_empty() || str.size() > size() )
         return (size_type)npos;
 
- const_iterator it = end() - substr.size();
+ const_iterator it = end() - str.size();
     const_iterator last = begin()-1;
 
     while( it != last ) {
- if( traits_type::compare( it, substr.begin(), substr.size() ) == 0 )
+ if( traits_type::compare( it, str.begin(), str.size() ) == 0 )
             break;
 
         --it;

Modified: branches/release/boost/test/utils/basic_cstring/basic_cstring_fwd.hpp
==============================================================================
--- branches/release/boost/test/utils/basic_cstring/basic_cstring_fwd.hpp (original)
+++ branches/release/boost/test/utils/basic_cstring/basic_cstring_fwd.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2004-2007.
+// (C) Copyright Gennadiy Rozental 2004-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/basic_cstring/bcs_char_traits.hpp
==============================================================================
--- branches/release/boost/test/utils/basic_cstring/bcs_char_traits.hpp (original)
+++ branches/release/boost/test/utils/basic_cstring/bcs_char_traits.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2004-2007.
+// (C) Copyright Gennadiy Rozental 2004-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/basic_cstring/compare.hpp
==============================================================================
--- branches/release/boost/test/utils/basic_cstring/compare.hpp (original)
+++ branches/release/boost/test/utils/basic_cstring/compare.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2004-2007.
+// (C) Copyright Gennadiy Rozental 2004-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -26,7 +26,7 @@
 
 //____________________________________________________________________________//
 
-# if defined(BOOST_NO_STDC_NAMESPACE) && !BOOST_WORKAROUND(__BORLANDC__, <= 0x570) && !BOOST_WORKAROUND(__GNUC__, < 3)
+# if defined(BOOST_NO_STDC_NAMESPACE) && !BOOST_WORKAROUND(__BORLANDC__, <= 0x570)
 namespace std { using ::toupper; }
 # endif
 

Modified: branches/release/boost/test/utils/basic_cstring/io.hpp
==============================================================================
--- branches/release/boost/test/utils/basic_cstring/io.hpp (original)
+++ branches/release/boost/test/utils/basic_cstring/io.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2004-2007.
+// (C) Copyright Gennadiy Rozental 2004-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/callback.hpp
==============================================================================
--- branches/release/boost/test/utils/callback.hpp (original)
+++ branches/release/boost/test/utils/callback.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/class_properties.hpp
==============================================================================
--- branches/release/boost/test/utils/class_properties.hpp (original)
+++ branches/release/boost/test/utils/class_properties.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/custom_manip.hpp
==============================================================================
--- branches/release/boost/test/utils/custom_manip.hpp (original)
+++ branches/release/boost/test/utils/custom_manip.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/fixed_mapping.hpp
==============================================================================
--- branches/release/boost/test/utils/fixed_mapping.hpp (original)
+++ branches/release/boost/test/utils/fixed_mapping.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2001-2007.
+// (C) Copyright Gennadiy Rozental 2001-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/foreach.hpp
==============================================================================
--- branches/release/boost/test/utils/foreach.hpp (original)
+++ branches/release/boost/test/utils/foreach.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,5 +1,5 @@
 // (C) Copyright Eric Niebler 2004-2005
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -203,10 +203,6 @@
 // ************** BOOST_TEST_FOREACH ************** //
 // ************************************************************************** //
 
-#if BOOST_WORKAROUND(__GNUC__, < 3)
-#define BOOST_TEST_FE_MULTISTATEMENT
-#endif
-
 #define BOOST_TEST_FE_ANY ::boost::unit_test::for_each::static_any_t
 #define BOOST_TEST_FE_IS_CONST( COL ) ::boost::unit_test::for_each::is_const_coll( COL )
 
@@ -258,8 +254,6 @@
 #define BOOST_TEST_FE_END_VAR BOOST_JOIN( _fe_end_, BOOST_TEST_LINE_NUM )
 #define BOOST_TEST_FE_CON_VAR BOOST_JOIN( _fe_con_, BOOST_TEST_LINE_NUM )
 
-#ifndef BOOST_TEST_FE_MULTISTATEMENT
-
 #define BOOST_TEST_FOREACH( RefType, var, COL ) \
 if( BOOST_TEST_FE_ANY BOOST_TEST_FE_CUR_VAR = BOOST_TEST_FE_BEG( COL ) ) {} else \
 if( BOOST_TEST_FE_ANY BOOST_TEST_FE_END_VAR = BOOST_TEST_FE_END( COL ) ) {} else \
@@ -272,24 +266,6 @@
          !BOOST_TEST_FE_CON_VAR; BOOST_TEST_FE_CON_VAR = true ) \
 /**/
 
-#else
-
-#define BOOST_TEST_FOREACH( RefType, var, COL ) \
-BOOST_TEST_FE_ANY BOOST_TEST_FE_CUR_VAR = BOOST_TEST_FE_BEG( COL ), \
- BOOST_TEST_FE_END_VAR = BOOST_TEST_FE_END( COL ); \
- \
-for( bool BOOST_TEST_FE_CON_VAR = true; BOOST_TEST_FE_CON_VAR; ) \
-for( ; \
- BOOST_TEST_FE_CON_VAR && (BOOST_TEST_FE_CON_VAR = !BOOST_TEST_FE_DONE( COL )); \
- BOOST_TEST_FE_CON_VAR ? BOOST_TEST_FE_NEXT( COL ) : BOOST_FOREACH_NOOP( COL )) \
- \
- if( (BOOST_TEST_FE_CON_VAR = false, false) ) {} else \
- for( RefType var = BOOST_TEST_FE_DEREF( COL, RefType ); \
- !BOOST_TEST_FE_CON_VAR; BOOST_TEST_FE_CON_VAR = true ) \
-/**/
-
-#endif
-
 //____________________________________________________________________________//
 
 } // namespace for_each

Modified: branches/release/boost/test/utils/iterator/ifstream_line_iterator.hpp
==============================================================================
--- branches/release/boost/test/utils/iterator/ifstream_line_iterator.hpp (original)
+++ branches/release/boost/test/utils/iterator/ifstream_line_iterator.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2004-2007.
+// (C) Copyright Gennadiy Rozental 2004-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/iterator/input_iterator_facade.hpp
==============================================================================
--- branches/release/boost/test/utils/iterator/input_iterator_facade.hpp (original)
+++ branches/release/boost/test/utils/iterator/input_iterator_facade.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2004-2007.
+// (C) Copyright Gennadiy Rozental 2004-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/iterator/istream_line_iterator.hpp
==============================================================================
--- branches/release/boost/test/utils/iterator/istream_line_iterator.hpp (original)
+++ branches/release/boost/test/utils/iterator/istream_line_iterator.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2004-2007.
+// (C) Copyright Gennadiy Rozental 2004-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -59,11 +59,7 @@
     }
     explicit basic_istream_line_iterator( istream_type& input )
     : m_input_stream( &input )
-#if BOOST_WORKAROUND(__GNUC__, < 3) && !defined(__SGI_STL_PORT) && !defined(_STLPORT_VERSION)
- , m_delimeter( '\n' )
-#else
     , m_delimeter( input.widen( '\n' ) )
-#endif
     {
         this->init();
     }
@@ -74,7 +70,7 @@
     // increment implementation
     bool get()
     {
- return std::getline( *m_input_stream, this->m_value, m_delimeter );
+ return !!std::getline( *m_input_stream, this->m_value, m_delimeter );
     }
 
     // Data members

Modified: branches/release/boost/test/utils/iterator/token_iterator.hpp
==============================================================================
--- branches/release/boost/test/utils/iterator/token_iterator.hpp (original)
+++ branches/release/boost/test/utils/iterator/token_iterator.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2004-2007.
+// (C) Copyright Gennadiy Rozental 2004-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/named_params.hpp
==============================================================================
--- branches/release/boost/test/utils/named_params.hpp (original)
+++ branches/release/boost/test/utils/named_params.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/nullstream.hpp
==============================================================================
--- branches/release/boost/test/utils/nullstream.hpp (original)
+++ branches/release/boost/test/utils/nullstream.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2002-2007.
+// (C) Copyright Gennadiy Rozental 2002-2008.
 // (C) Copyright Daryle Walker 2000-2001.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at

Modified: branches/release/boost/test/utils/rtti.hpp
==============================================================================
--- branches/release/boost/test/utils/rtti.hpp (original)
+++ branches/release/boost/test/utils/rtti.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/argument.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/argument.hpp (original)
+++ branches/release/boost/test/utils/runtime/argument.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/argument_factory.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/argument_factory.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/argument_factory.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/argv_traverser.cpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/argv_traverser.cpp (original)
+++ branches/release/boost/test/utils/runtime/cla/argv_traverser.cpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/argv_traverser.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/argv_traverser.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/argv_traverser.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/argv_traverser.ipp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/argv_traverser.ipp (original)
+++ branches/release/boost/test/utils/runtime/cla/argv_traverser.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/basic_parameter.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/basic_parameter.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/basic_parameter.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/char_parameter.cpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/char_parameter.cpp (original)
+++ branches/release/boost/test/utils/runtime/cla/char_parameter.cpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/char_parameter.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/char_parameter.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/char_parameter.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/char_parameter.ipp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/char_parameter.ipp (original)
+++ branches/release/boost/test/utils/runtime/cla/char_parameter.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/detail/argument_value_usage.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/detail/argument_value_usage.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/detail/argument_value_usage.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Permission to copy, use, modify, sell and distribute this software
 // is granted provided this copyright notice appears in all copies.
 // This software is provided "as is" without express or implied warranty,

Modified: branches/release/boost/test/utils/runtime/cla/dual_name_parameter.cpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/dual_name_parameter.cpp (original)
+++ branches/release/boost/test/utils/runtime/cla/dual_name_parameter.cpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/dual_name_parameter.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/dual_name_parameter.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/dual_name_parameter.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/dual_name_parameter.ipp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/dual_name_parameter.ipp (original)
+++ branches/release/boost/test/utils/runtime/cla/dual_name_parameter.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/fwd.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/fwd.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/fwd.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/id_policy.cpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/id_policy.cpp (original)
+++ branches/release/boost/test/utils/runtime/cla/id_policy.cpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/id_policy.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/id_policy.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/id_policy.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/id_policy.ipp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/id_policy.ipp (original)
+++ branches/release/boost/test/utils/runtime/cla/id_policy.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/iface/argument_factory.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/iface/argument_factory.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/iface/argument_factory.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -38,6 +38,8 @@
     virtual argument_ptr produce_using( parameter& p, argv_traverser& tr ) = 0; /// produce argument based on input
     virtual argument_ptr produce_using( parameter& p, parser const& ) = 0; /// produce argument based on internal generator and/or values of other parameters
     virtual void argument_usage_info( format_stream& fs ) = 0; /// argument value format information
+protected:
+ BOOST_TEST_PROTECTED_VIRTUAL ~argument_factory() {}
 };
 
 } // namespace boost

Modified: branches/release/boost/test/utils/runtime/cla/iface/id_policy.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/iface/id_policy.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/iface/id_policy.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -52,6 +52,7 @@
     explicit identification_policy( rtti::id_t const& dyn_type )
     : p_type_id( dyn_type )
     {}
+ BOOST_TEST_PROTECTED_VIRTUAL ~identification_policy() {}
 };
 
 } // namespace cla

Modified: branches/release/boost/test/utils/runtime/cla/modifier.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/modifier.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/modifier.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/named_parameter.cpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/named_parameter.cpp (original)
+++ branches/release/boost/test/utils/runtime/cla/named_parameter.cpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/named_parameter.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/named_parameter.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/named_parameter.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/named_parameter.ipp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/named_parameter.ipp (original)
+++ branches/release/boost/test/utils/runtime/cla/named_parameter.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/parameter.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/parameter.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/parameter.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -87,7 +87,7 @@
     bool responds_to( cstring name ) const { return m_id_policy.responds_to( name ); }
     bool conflict_with( parameter const& p ) const
     {
- return id_2_report() == p.id_2_report() && !id_2_report().is_empty() ||
+ return (id_2_report() == p.id_2_report() && !id_2_report().is_empty()) ||
                m_id_policy.conflict_with( p.m_id_policy ) ||
                p.m_id_policy.conflict_with( m_id_policy );
     }

Modified: branches/release/boost/test/utils/runtime/cla/parser.cpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/parser.cpp (original)
+++ branches/release/boost/test/utils/runtime/cla/parser.cpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/parser.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/parser.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/parser.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/parser.ipp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/parser.ipp (original)
+++ branches/release/boost/test/utils/runtime/cla/parser.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/positional_parameter.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/positional_parameter.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/positional_parameter.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -38,17 +38,17 @@
     BOOST_RT_PARAM_UNNEEDED_VIRTUAL ~trivial_id_policy() {}
 
     virtual bool responds_to( cstring name ) const { return m_name == name; }
- virtual bool conflict_with( identification_policy const& id ) const { return false; }
+ virtual bool conflict_with( identification_policy const& ) const { return false; }
     virtual cstring id_2_report() const { return m_name; }
     virtual void usage_info( format_stream& fs ) const
     {
         if( !m_name.empty() )
             fs << BOOST_RT_PARAM_LITERAL( '<' ) << m_name << BOOST_RT_PARAM_LITERAL( '>' );
         else
- fs << BOOST_RT_PARAM_CSTRING_LITERAL( "<value>" );;
+ fs << BOOST_RT_PARAM_CSTRING_LITERAL( "<value>" );
     }
 
- virtual bool matching( parameter const& p, argv_traverser& tr, bool primary ) const
+ virtual bool matching( parameter const& p, argv_traverser&, bool primary ) const
     {
         return primary && ( !p.has_argument() || p.p_multiplicable );
     }

Modified: branches/release/boost/test/utils/runtime/cla/typed_parameter.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/typed_parameter.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/typed_parameter.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/validation.cpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/validation.cpp (original)
+++ branches/release/boost/test/utils/runtime/cla/validation.cpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/validation.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/validation.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/validation.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/validation.ipp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/validation.ipp (original)
+++ branches/release/boost/test/utils/runtime/cla/validation.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/value_generator.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/value_generator.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/value_generator.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/cla/value_handler.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/cla/value_handler.hpp (original)
+++ branches/release/boost/test/utils/runtime/cla/value_handler.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/config.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/config.hpp (original)
+++ branches/release/boost/test/utils/runtime/config.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/configuration.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/configuration.hpp (original)
+++ branches/release/boost/test/utils/runtime/configuration.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/env/environment.cpp
==============================================================================
--- branches/release/boost/test/utils/runtime/env/environment.cpp (original)
+++ branches/release/boost/test/utils/runtime/env/environment.cpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2004-2007.
+// (C) Copyright Gennadiy Rozental 2004-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/env/environment.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/env/environment.hpp (original)
+++ branches/release/boost/test/utils/runtime/env/environment.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/env/environment.ipp
==============================================================================
--- branches/release/boost/test/utils/runtime/env/environment.ipp (original)
+++ branches/release/boost/test/utils/runtime/env/environment.ipp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/env/fwd.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/env/fwd.hpp (original)
+++ branches/release/boost/test/utils/runtime/env/fwd.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -24,6 +24,9 @@
 
 namespace environment {
 
+class variable_base;
+variable_base var( cstring var_name );
+
 namespace rt_env_detail {
 
 struct variable_data;
@@ -36,7 +39,6 @@
 
 }
 
-class variable_base;
 template <typename T> class variable;
 
 } // namespace environment

Modified: branches/release/boost/test/utils/runtime/env/modifier.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/env/modifier.hpp (original)
+++ branches/release/boost/test/utils/runtime/env/modifier.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/env/variable.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/env/variable.hpp (original)
+++ branches/release/boost/test/utils/runtime/env/variable.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/file/config_file.cpp
==============================================================================
--- branches/release/boost/test/utils/runtime/file/config_file.cpp (original)
+++ branches/release/boost/test/utils/runtime/file/config_file.cpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/file/config_file.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/file/config_file.hpp (original)
+++ branches/release/boost/test/utils/runtime/file/config_file.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/file/config_file_iterator.cpp
==============================================================================
--- branches/release/boost/test/utils/runtime/file/config_file_iterator.cpp (original)
+++ branches/release/boost/test/utils/runtime/file/config_file_iterator.cpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/file/config_file_iterator.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/file/config_file_iterator.hpp (original)
+++ branches/release/boost/test/utils/runtime/file/config_file_iterator.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Use, modification, and distribution are subject to the
 // Boost Software License, Version 1.0. (See accompanying file
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/fwd.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/fwd.hpp (original)
+++ branches/release/boost/test/utils/runtime/fwd.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/interpret_argument_value.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/interpret_argument_value.hpp (original)
+++ branches/release/boost/test/utils/runtime/interpret_argument_value.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/parameter.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/parameter.hpp (original)
+++ branches/release/boost/test/utils/runtime/parameter.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/trace.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/trace.hpp (original)
+++ branches/release/boost/test/utils/runtime/trace.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/runtime/validation.hpp
==============================================================================
--- branches/release/boost/test/utils/runtime/validation.hpp (original)
+++ branches/release/boost/test/utils/runtime/validation.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/trivial_singleton.hpp
==============================================================================
--- branches/release/boost/test/utils/trivial_singleton.hpp (original)
+++ branches/release/boost/test/utils/trivial_singleton.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2005-2007.
+// (C) Copyright Gennadiy Rozental 2005-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)

Modified: branches/release/boost/test/utils/wrap_stringstream.hpp
==============================================================================
--- branches/release/boost/test/utils/wrap_stringstream.hpp (original)
+++ branches/release/boost/test/utils/wrap_stringstream.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2002-2007.
+// (C) Copyright Gennadiy Rozental 2002-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -114,9 +114,7 @@
 
 //____________________________________________________________________________//
 
-#if !defined(BOOST_NO_STD_LOCALE) && \
- (!defined(BOOST_MSVC) || BOOST_WORKAROUND(BOOST_MSVC, >= 1310)) && \
- !defined(__MWERKS__) && !BOOST_WORKAROUND(__GNUC__, < 3)
+#if BOOST_TEST_USE_STD_LOCALE
 
 template <typename CharT>
 inline basic_wrap_stringstream<CharT>&

Modified: branches/release/boost/test/utils/xml_printer.hpp
==============================================================================
--- branches/release/boost/test/utils/xml_printer.hpp (original)
+++ branches/release/boost/test/utils/xml_printer.hpp 2008-10-13 04:20:26 EDT (Mon, 13 Oct 2008)
@@ -1,4 +1,4 @@
-// (C) Copyright Gennadiy Rozental 2004-2007.
+// (C) Copyright Gennadiy Rozental 2004-2008.
 // Distributed under the Boost Software License, Version 1.0.
 // (See accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -67,7 +67,7 @@
 inline void
 print_escaped( std::ostream& where_to, std::string const& value )
 {
- print_escaped( where_to, const_string( value ) );
+ print_escaped( where_to, const_string( value ) );
 }
 
 //____________________________________________________________________________//
@@ -76,7 +76,7 @@
 inline void
 print_escaped( std::ostream& where_to, T const& value )
 {
- where_to << value;
+ where_to << value;
 }
 
 //____________________________________________________________________________//
@@ -87,11 +87,11 @@
 inline std::ostream&
 operator<<( custom_printer<attr_value> const& p, T const& value )
 {
- *p << "=\"";
- print_escaped( *p, value );
- *p << '"';
+ *p << "=\"";
+ print_escaped( *p, value );
+ *p << '"';
 
- return *p;
+ return *p;
 }
 
 //____________________________________________________________________________//


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