Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r85577 - in trunk: boost/log/utility boost/log/utility/functional boost/log/utility/setup boost/utility libs/log/doc libs/log/example/advanced_usage libs/log/example/async_log libs/log/example/bounded_async_log libs/log/example/doc libs/log/example/multiple_threads libs/log/src
From: andrey.semashev_at_[hidden]
Date: 2013-09-05 14:25:41


Author: andysem
Date: 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013)
New Revision: 85577
URL: http://svn.boost.org/trac/boost/changeset/85577

Log:
Extracted empty_deleter to Boost.Utility.

Added:
   trunk/boost/utility/empty_deleter.hpp (contents, props changed)
Text files modified:
   trunk/boost/log/utility/empty_deleter.hpp | 25 +++++++++-------------
   trunk/boost/log/utility/functional/nop.hpp | 10 ++++----
   trunk/boost/log/utility/setup/console.hpp | 4 +-
   trunk/boost/log/utility/type_info_wrapper.hpp | 2
   trunk/boost/utility/empty_deleter.hpp | 43 ++++++++++++++++++++++++++++++++++++++++
   trunk/libs/log/doc/changelog.qbk | 3 +
   trunk/libs/log/example/advanced_usage/main.cpp | 4 +-
   trunk/libs/log/example/async_log/main.cpp | 1
   trunk/libs/log/example/bounded_async_log/main.cpp | 1
   trunk/libs/log/example/doc/extension_system_uptime_attr.cpp | 4 +-
   trunk/libs/log/example/doc/sinks_async.cpp | 4 +-
   trunk/libs/log/example/doc/sinks_async_bounded.cpp | 4 +-
   trunk/libs/log/example/doc/sinks_async_ordering.cpp | 4 +-
   trunk/libs/log/example/doc/sinks_file.cpp | 1
   trunk/libs/log/example/doc/sinks_ostream.cpp | 4 +-
   trunk/libs/log/example/doc/sinks_sync.cpp | 4 +-
   trunk/libs/log/example/multiple_threads/main.cpp | 1
   trunk/libs/log/src/init_from_settings.cpp | 6 ++--
   18 files changed, 80 insertions(+), 45 deletions(-)

Modified: trunk/boost/log/utility/empty_deleter.hpp
==============================================================================
--- trunk/boost/log/utility/empty_deleter.hpp Thu Sep 5 13:55:37 2013 (r85576)
+++ trunk/boost/log/utility/empty_deleter.hpp 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013) (r85577)
@@ -9,36 +9,31 @@
  * \author Andrey Semashev
  * \date 22.04.2007
  *
- * This header contains an \c empty_deleter implementation. This is an empty
- * function object that receives a pointer and does nothing with it.
- * Such empty deletion strategy may be convenient, for example, when
- * constructing <tt>shared_ptr</tt>s that point to some object that should not be
- * deleted (i.e. a variable on the stack or some global singleton, like <tt>std::cout</tt>).
+ * This header is deprecated, use boost/utility/empty_deleter.hpp instead. The header is left for
+ * backward compatibility and will be removed in future versions.
  */
 
 #ifndef BOOST_LOG_UTILITY_EMPTY_DELETER_HPP_INCLUDED_
 #define BOOST_LOG_UTILITY_EMPTY_DELETER_HPP_INCLUDED_
 
+#include <boost/utility/empty_deleter.hpp>
 #include <boost/log/detail/config.hpp>
 
 #ifdef BOOST_HAS_PRAGMA_ONCE
 #pragma once
 #endif
 
+#if defined(__GNUC__)
+#pragma message "Boost.Log: This header is deprecated, use boost/utility/empty_deleter.hpp instead."
+#elif defined(_MSC_VER)
+#pragma message("Boost.Log: This header is deprecated, use boost/utility/empty_deleter.hpp instead.")
+#endif
+
 namespace boost {
 
 BOOST_LOG_OPEN_NAMESPACE
 
-//! A function object that does nothing and can be used as an empty deleter for \c shared_ptr
-struct empty_deleter
-{
- //! Function object result type
- typedef void result_type;
- /*!
- * Does nothing
- */
- void operator() (const volatile void*) const {}
-};
+using boost::empty_deleter
 
 BOOST_LOG_CLOSE_NAMESPACE // namespace log
 

Modified: trunk/boost/log/utility/functional/nop.hpp
==============================================================================
--- trunk/boost/log/utility/functional/nop.hpp Thu Sep 5 13:55:37 2013 (r85576)
+++ trunk/boost/log/utility/functional/nop.hpp 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013) (r85577)
@@ -31,18 +31,18 @@
 {
     typedef void result_type;
 
- void operator() () const {}
+ void operator() () const BOOST_NOEXCEPT {}
 
 #if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
     template< typename... ArgsT >
- void operator() (ArgsT const&...) const {}
+ void operator() (ArgsT const&...) const BOOST_NOEXCEPT {}
 #else
     template< typename T >
- void operator() (T const&) const {}
+ void operator() (T const&) const BOOST_NOEXCEPT {}
     template< typename T1, typename T2 >
- void operator() (T1 const&, T2 const&) const {}
+ void operator() (T1 const&, T2 const&) const BOOST_NOEXCEPT {}
     template< typename T1, typename T2, typename T3 >
- void operator() (T1 const&, T2 const&, T3 const&) const {}
+ void operator() (T1 const&, T2 const&, T3 const&) const BOOST_NOEXCEPT {}
 #endif
 };
 

Modified: trunk/boost/log/utility/setup/console.hpp
==============================================================================
--- trunk/boost/log/utility/setup/console.hpp Thu Sep 5 13:55:37 2013 (r85576)
+++ trunk/boost/log/utility/setup/console.hpp 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013) (r85577)
@@ -18,6 +18,7 @@
 #include <iostream>
 #include <boost/smart_ptr/shared_ptr.hpp>
 #include <boost/smart_ptr/make_shared_object.hpp>
+#include <boost/utility/empty_deleter.hpp>
 #include <boost/log/detail/config.hpp>
 #include <boost/log/detail/sink_init_helpers.hpp>
 #ifndef BOOST_LOG_NO_THREADS
@@ -26,7 +27,6 @@
 #include <boost/log/sinks/unlocked_frontend.hpp>
 #endif
 #include <boost/log/sinks/text_ostream_backend.hpp>
-#include <boost/log/utility/empty_deleter.hpp>
 #include <boost/log/keywords/format.hpp>
 #include <boost/log/keywords/filter.hpp>
 #include <boost/log/keywords/auto_flush.hpp>
@@ -59,7 +59,7 @@
>
> add_console_log(std::basic_ostream< CharT >& strm, ArgsT const& args)
 {
- shared_ptr< std::basic_ostream< CharT > > pStream(&strm, empty_deleter());
+ shared_ptr< std::basic_ostream< CharT > > pStream(&strm, boost::empty_deleter());
 
     typedef sinks::basic_text_ostream_backend< CharT > backend_t;
     shared_ptr< backend_t > pBackend = boost::make_shared< backend_t >();

Modified: trunk/boost/log/utility/type_info_wrapper.hpp
==============================================================================
--- trunk/boost/log/utility/type_info_wrapper.hpp Thu Sep 5 13:55:37 2013 (r85576)
+++ trunk/boost/log/utility/type_info_wrapper.hpp 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013) (r85577)
@@ -17,8 +17,8 @@
 
 #include <typeinfo>
 #include <string>
-#include <boost/log/detail/config.hpp>
 #include <boost/utility/explicit_operator_bool.hpp>
+#include <boost/log/detail/config.hpp>
 
 #ifdef BOOST_LOG_HAS_CXXABI_H
 #include <cxxabi.h>

Added: trunk/boost/utility/empty_deleter.hpp
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ trunk/boost/utility/empty_deleter.hpp 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013) (r85577)
@@ -0,0 +1,43 @@
+/*
+ * Copyright Andrey Semashev 2007 - 2013.
+ * 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)
+ */
+/*!
+ * \file empty_deleter.hpp
+ * \author Andrey Semashev
+ * \date 22.04.2007
+ *
+ * This header contains an \c empty_deleter implementation. This is an empty
+ * function object that receives a pointer and does nothing with it.
+ * Such empty deletion strategy may be convenient, for example, when
+ * constructing <tt>shared_ptr</tt>s that point to some object that should not be
+ * deleted (i.e. a variable on the stack or some global singleton, like <tt>std::cout</tt>).
+ */
+
+#ifndef BOOST_UTILITY_EMPTY_DELETER_HPP_INCLUDED_
+#define BOOST_UTILITY_EMPTY_DELETER_HPP_INCLUDED_
+
+#include <boost/config.hpp>
+
+#ifdef BOOST_HAS_PRAGMA_ONCE
+#pragma once
+#endif
+
+namespace boost {
+
+//! A function object that does nothing and can be used as an empty deleter for \c shared_ptr
+struct empty_deleter
+{
+ //! Function object result type
+ typedef void result_type;
+ /*!
+ * Does nothing
+ */
+ void operator() (const volatile void*) const BOOST_NOEXCEPT {}
+};
+
+} // namespace boost
+
+#endif // BOOST_UTILITY_EMPTY_DELETER_HPP_INCLUDED_

Modified: trunk/libs/log/doc/changelog.qbk
==============================================================================
--- trunk/libs/log/doc/changelog.qbk Thu Sep 5 13:55:37 2013 (r85576)
+++ trunk/libs/log/doc/changelog.qbk 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013) (r85577)
@@ -15,8 +15,9 @@
 
 * Added a new configuration macro `BOOST_LOG_WITHOUT_DEFAULT_FACTORIES`. By defining this macro the user can disable compilation of the default filter and formatter factories used by settings parsers. This can substantially reduce binary sizes while still retaining support for settings parsers. Note that when this macro is defined the user will have to register _all_ attributes in the library.
 * Rewritten some of the parsers to reduce the compiled binary size. The rewritten parsers are more robust in detecting ambiguous and incorrect input.
-* The header `boost/log/utility/intrusive_ref_counter.hpp` is deprecated and will be removed in future releases. Its contents have been moved to __boost_smart_ptr__, as `boost/smart_ptr/intrusive_ref_counter.hpp`.
+* The header `boost/log/utility/intrusive_ref_counter.hpp` is deprecated and will be removed in future releases. Its contents have been reworked and moved to __boost_smart_ptr__, as `boost/smart_ptr/intrusive_ref_counter.hpp`.
 * The header `boost/log/utility/explicit_operator_bool.hpp` is deprecated and will be removed in future releases. Its contents have been moved to __boost_utility__, as `boost/utility/explicit_operator_bool.hpp`.
+* The header `boost/log/utility/empty_deleter.hpp` is deprecated and will be removed in future releases. Its contents have been moved to __boost_utility__, as `boost/utility/empty_deleter.hpp`.
 
 [*Bug fixes:]
 

Modified: trunk/libs/log/example/advanced_usage/main.cpp
==============================================================================
--- trunk/libs/log/example/advanced_usage/main.cpp Thu Sep 5 13:55:37 2013 (r85576)
+++ trunk/libs/log/example/advanced_usage/main.cpp 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013) (r85577)
@@ -22,13 +22,13 @@
 #include <iostream>
 #include <fstream>
 #include <boost/smart_ptr/shared_ptr.hpp>
+#include <boost/utility/empty_deleter.hpp>
 #include <boost/date_time/posix_time/posix_time.hpp>
 #include <boost/log/common.hpp>
 #include <boost/log/expressions.hpp>
 #include <boost/log/attributes.hpp>
 #include <boost/log/sinks.hpp>
 #include <boost/log/sources/logger.hpp>
-#include <boost/log/utility/empty_deleter.hpp>
 #include <boost/log/utility/manipulators/add_value.hpp>
 #include <boost/log/attributes/scoped_attribute.hpp>
 #include <boost/log/support/date_time.hpp>
@@ -113,7 +113,7 @@
         // interference of other threads that might be trying to log.
 
         // Next we add streams to which logging records should be output
- shared_ptr< std::ostream > pStream(&std::clog, logging::empty_deleter());
+ shared_ptr< std::ostream > pStream(&std::clog, boost::empty_deleter());
         pBackend->add_stream(pStream);
 
         // We can add more than one stream to the sink backend

Modified: trunk/libs/log/example/async_log/main.cpp
==============================================================================
--- trunk/libs/log/example/async_log/main.cpp Thu Sep 5 13:55:37 2013 (r85576)
+++ trunk/libs/log/example/async_log/main.cpp 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013) (r85577)
@@ -31,7 +31,6 @@
 #include <boost/log/attributes.hpp>
 #include <boost/log/sinks.hpp>
 #include <boost/log/sources/logger.hpp>
-#include <boost/log/utility/empty_deleter.hpp>
 #include <boost/log/utility/record_ordering.hpp>
 
 namespace logging = boost::log;

Modified: trunk/libs/log/example/bounded_async_log/main.cpp
==============================================================================
--- trunk/libs/log/example/bounded_async_log/main.cpp Thu Sep 5 13:55:37 2013 (r85576)
+++ trunk/libs/log/example/bounded_async_log/main.cpp 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013) (r85577)
@@ -31,7 +31,6 @@
 #include <boost/log/attributes.hpp>
 #include <boost/log/sinks.hpp>
 #include <boost/log/sources/logger.hpp>
-#include <boost/log/utility/empty_deleter.hpp>
 #include <boost/log/utility/record_ordering.hpp>
 
 namespace logging = boost::log;

Modified: trunk/libs/log/example/doc/extension_system_uptime_attr.cpp
==============================================================================
--- trunk/libs/log/example/doc/extension_system_uptime_attr.cpp Thu Sep 5 13:55:37 2013 (r85576)
+++ trunk/libs/log/example/doc/extension_system_uptime_attr.cpp 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013) (r85577)
@@ -10,6 +10,7 @@
 #include <stdexcept>
 #include <boost/config.hpp>
 #include <boost/smart_ptr/shared_ptr.hpp>
+#include <boost/utility/empty_deleter.hpp>
 #include <boost/log/core.hpp>
 #include <boost/log/expressions.hpp>
 #include <boost/log/sinks/sync_frontend.hpp>
@@ -20,7 +21,6 @@
 #include <boost/log/attributes/attribute_value.hpp>
 #include <boost/log/attributes/attribute_value_impl.hpp>
 #include <boost/log/attributes/attribute_cast.hpp>
-#include <boost/log/utility/empty_deleter.hpp>
 
 // Includes for get_uptime()
 #include <boost/throw_exception.hpp>
@@ -85,7 +85,7 @@
     // Initialize the sink
     typedef sinks::synchronous_sink< sinks::text_ostream_backend > sink_t;
     boost::shared_ptr< sink_t > sink(new sink_t());
- sink->locked_backend()->add_stream(boost::shared_ptr< std::ostream >(&std::clog, logging::empty_deleter()));
+ sink->locked_backend()->add_stream(boost::shared_ptr< std::ostream >(&std::clog, boost::empty_deleter()));
     sink->set_formatter(expr::stream << expr::attr< unsigned int >("SystemUptime") << ": " << expr::smessage);
     core->add_sink(sink);
     //->

Modified: trunk/libs/log/example/doc/sinks_async.cpp
==============================================================================
--- trunk/libs/log/example/doc/sinks_async.cpp Thu Sep 5 13:55:37 2013 (r85576)
+++ trunk/libs/log/example/doc/sinks_async.cpp 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013) (r85577)
@@ -9,13 +9,13 @@
 #include <fstream>
 #include <iostream>
 #include <boost/smart_ptr/shared_ptr.hpp>
+#include <boost/utility/empty_deleter.hpp>
 #include <boost/log/core.hpp>
 #include <boost/log/expressions.hpp>
 #include <boost/log/sinks/async_frontend.hpp>
 #include <boost/log/sinks/text_ostream_backend.hpp>
 #include <boost/log/sources/severity_channel_logger.hpp>
 #include <boost/log/sources/record_ostream.hpp>
-#include <boost/log/utility/empty_deleter.hpp>
 
 namespace logging = boost::log;
 namespace src = boost::log::sources;
@@ -42,7 +42,7 @@
     boost::shared_ptr< sinks::text_ostream_backend > backend =
         boost::make_shared< sinks::text_ostream_backend >();
     backend->add_stream(
- boost::shared_ptr< std::ostream >(&std::clog, logging::empty_deleter()));
+ boost::shared_ptr< std::ostream >(&std::clog, boost::empty_deleter()));
 
     // Wrap it into the frontend and register in the core
     boost::shared_ptr< sink_t > sink(new sink_t(backend));

Modified: trunk/libs/log/example/doc/sinks_async_bounded.cpp
==============================================================================
--- trunk/libs/log/example/doc/sinks_async_bounded.cpp Thu Sep 5 13:55:37 2013 (r85576)
+++ trunk/libs/log/example/doc/sinks_async_bounded.cpp 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013) (r85577)
@@ -9,6 +9,7 @@
 #include <fstream>
 #include <iostream>
 #include <boost/smart_ptr/shared_ptr.hpp>
+#include <boost/utility/empty_deleter.hpp>
 #include <boost/log/core.hpp>
 #include <boost/log/expressions.hpp>
 #include <boost/log/sinks/async_frontend.hpp>
@@ -17,7 +18,6 @@
 #include <boost/log/sinks/drop_on_overflow.hpp>
 #include <boost/log/sources/severity_channel_logger.hpp>
 #include <boost/log/sources/record_ostream.hpp>
-#include <boost/log/utility/empty_deleter.hpp>
 
 namespace logging = boost::log;
 namespace src = boost::log::sources;
@@ -50,7 +50,7 @@
     boost::shared_ptr< sinks::text_ostream_backend > backend =
         boost::make_shared< sinks::text_ostream_backend >();
     backend->add_stream(
- boost::shared_ptr< std::ostream >(&std::clog, logging::empty_deleter()));
+ boost::shared_ptr< std::ostream >(&std::clog, boost::empty_deleter()));
 
     // Wrap it into the frontend and register in the core
     boost::shared_ptr< sink_t > sink(new sink_t(backend));

Modified: trunk/libs/log/example/doc/sinks_async_ordering.cpp
==============================================================================
--- trunk/libs/log/example/doc/sinks_async_ordering.cpp Thu Sep 5 13:55:37 2013 (r85576)
+++ trunk/libs/log/example/doc/sinks_async_ordering.cpp 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013) (r85577)
@@ -10,6 +10,7 @@
 #include <iostream>
 #include <functional>
 #include <boost/smart_ptr/shared_ptr.hpp>
+#include <boost/utility/empty_deleter.hpp>
 #include <boost/date_time/posix_time/posix_time_types.hpp>
 #include <boost/log/core.hpp>
 #include <boost/log/expressions.hpp>
@@ -18,7 +19,6 @@
 #include <boost/log/sinks/text_ostream_backend.hpp>
 #include <boost/log/sources/severity_channel_logger.hpp>
 #include <boost/log/sources/record_ostream.hpp>
-#include <boost/log/utility/empty_deleter.hpp>
 #include <boost/log/utility/record_ordering.hpp>
 #include <boost/log/utility/setup/common_attributes.hpp>
 
@@ -55,7 +55,7 @@
     boost::shared_ptr< sinks::text_ostream_backend > backend =
         boost::make_shared< sinks::text_ostream_backend >();
     backend->add_stream(
- boost::shared_ptr< std::ostream >(&std::clog, logging::empty_deleter()));
+ boost::shared_ptr< std::ostream >(&std::clog, boost::empty_deleter()));
 
     // Wrap it into the frontend and register in the core
     boost::shared_ptr< sink_t > sink(new sink_t(

Modified: trunk/libs/log/example/doc/sinks_file.cpp
==============================================================================
--- trunk/libs/log/example/doc/sinks_file.cpp Thu Sep 5 13:55:37 2013 (r85576)
+++ trunk/libs/log/example/doc/sinks_file.cpp 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013) (r85577)
@@ -14,7 +14,6 @@
 #include <boost/log/sinks/text_file_backend.hpp>
 #include <boost/log/sources/severity_channel_logger.hpp>
 #include <boost/log/sources/record_ostream.hpp>
-#include <boost/log/utility/empty_deleter.hpp>
 
 namespace logging = boost::log;
 namespace src = boost::log::sources;

Modified: trunk/libs/log/example/doc/sinks_ostream.cpp
==============================================================================
--- trunk/libs/log/example/doc/sinks_ostream.cpp Thu Sep 5 13:55:37 2013 (r85576)
+++ trunk/libs/log/example/doc/sinks_ostream.cpp 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013) (r85577)
@@ -9,12 +9,12 @@
 #include <fstream>
 #include <iostream>
 #include <boost/smart_ptr/shared_ptr.hpp>
+#include <boost/utility/empty_deleter.hpp>
 #include <boost/log/core.hpp>
 #include <boost/log/sinks/sync_frontend.hpp>
 #include <boost/log/sinks/text_ostream_backend.hpp>
 #include <boost/log/sources/severity_channel_logger.hpp>
 #include <boost/log/sources/record_ostream.hpp>
-#include <boost/log/utility/empty_deleter.hpp>
 
 namespace logging = boost::log;
 namespace src = boost::log::sources;
@@ -30,7 +30,7 @@
     boost::shared_ptr< sinks::text_ostream_backend > backend =
         boost::make_shared< sinks::text_ostream_backend >();
     backend->add_stream(
- boost::shared_ptr< std::ostream >(&std::clog, logging::empty_deleter()));
+ boost::shared_ptr< std::ostream >(&std::clog, boost::empty_deleter()));
     backend->add_stream(
         boost::shared_ptr< std::ostream >(new std::ofstream("sample.log")));
 

Modified: trunk/libs/log/example/doc/sinks_sync.cpp
==============================================================================
--- trunk/libs/log/example/doc/sinks_sync.cpp Thu Sep 5 13:55:37 2013 (r85576)
+++ trunk/libs/log/example/doc/sinks_sync.cpp 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013) (r85577)
@@ -9,13 +9,13 @@
 #include <fstream>
 #include <iostream>
 #include <boost/smart_ptr/shared_ptr.hpp>
+#include <boost/utility/empty_deleter.hpp>
 #include <boost/log/core.hpp>
 #include <boost/log/expressions.hpp>
 #include <boost/log/sinks/sync_frontend.hpp>
 #include <boost/log/sinks/text_ostream_backend.hpp>
 #include <boost/log/sources/severity_channel_logger.hpp>
 #include <boost/log/sources/record_ostream.hpp>
-#include <boost/log/utility/empty_deleter.hpp>
 
 namespace logging = boost::log;
 namespace src = boost::log::sources;
@@ -42,7 +42,7 @@
     boost::shared_ptr< sinks::text_ostream_backend > backend =
         boost::make_shared< sinks::text_ostream_backend >();
     backend->add_stream(
- boost::shared_ptr< std::ostream >(&std::clog, logging::empty_deleter()));
+ boost::shared_ptr< std::ostream >(&std::clog, boost::empty_deleter()));
 
     // Wrap it into the frontend and register in the core
     boost::shared_ptr< sink_t > sink(new sink_t(backend));

Modified: trunk/libs/log/example/multiple_threads/main.cpp
==============================================================================
--- trunk/libs/log/example/multiple_threads/main.cpp Thu Sep 5 13:55:37 2013 (r85576)
+++ trunk/libs/log/example/multiple_threads/main.cpp 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013) (r85577)
@@ -33,7 +33,6 @@
 #include <boost/log/attributes.hpp>
 #include <boost/log/sinks.hpp>
 #include <boost/log/sources/logger.hpp>
-#include <boost/log/utility/empty_deleter.hpp>
 
 namespace logging = boost::log;
 namespace attrs = boost::log::attributes;

Modified: trunk/libs/log/src/init_from_settings.cpp
==============================================================================
--- trunk/libs/log/src/init_from_settings.cpp Thu Sep 5 13:55:37 2013 (r85576)
+++ trunk/libs/log/src/init_from_settings.cpp 2013-09-05 14:25:41 EDT (Thu, 05 Sep 2013) (r85577)
@@ -30,7 +30,8 @@
 #include <boost/limits.hpp>
 #include <boost/cstdint.hpp>
 #include <boost/smart_ptr/make_shared_object.hpp>
-#include <boost/optional.hpp>
+#include <boost/utility/empty_deleter.hpp>
+#include <boost/optional/optional.hpp>
 #include <boost/filesystem/path.hpp>
 #include <boost/date_time/date_defs.hpp>
 #include <boost/property_tree/ptree.hpp>
@@ -49,7 +50,6 @@
 #include <boost/log/sinks/frontend_requirements.hpp>
 #include <boost/log/expressions/filter.hpp>
 #include <boost/log/expressions/formatter.hpp>
-#include <boost/log/utility/empty_deleter.hpp>
 #include <boost/log/utility/setup/from_settings.hpp>
 #include <boost/log/utility/setup/filter_parser.hpp>
 #include <boost/log/utility/setup/formatter_parser.hpp>
@@ -312,7 +312,7 @@
             typedef boost::log::aux::char_constants< BackendCharT > constants;
             typedef sinks::basic_text_ostream_backend< BackendCharT > backend_t;
             shared_ptr< backend_t > backend = boost::make_shared< backend_t >();
- backend->add_stream(shared_ptr< typename backend_t::stream_type >(&constants::get_console_log_stream(), empty_deleter()));
+ backend->add_stream(shared_ptr< typename backend_t::stream_type >(&constants::get_console_log_stream(), boost::empty_deleter()));
 
             // Auto flush
             if (optional< string_type > auto_flush_param = params["AutoFlush"])


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