Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r78738 - in trunk: boost/asio/detail libs/asio/doc
From: chris_at_[hidden]
Date: 2012-05-28 17:36:43


Author: chris_kohlhoff
Date: 2012-05-28 17:36:43 EDT (Mon, 28 May 2012)
New Revision: 78738
URL: http://svn.boost.org/trac/boost/changeset/78738

Log:
Add support for g++ 4.7 when compiling in C++11 mode. Update revision history.
Text files modified:
   trunk/boost/asio/detail/config.hpp | 18 +++++++++++++++++-
   trunk/libs/asio/doc/history.qbk | 4 +++-
   2 files changed, 20 insertions(+), 2 deletions(-)

Modified: trunk/boost/asio/detail/config.hpp
==============================================================================
--- trunk/boost/asio/detail/config.hpp (original)
+++ trunk/boost/asio/detail/config.hpp 2012-05-28 17:36:43 EDT (Mon, 28 May 2012)
@@ -112,6 +112,20 @@
 # endif // defined(__GNUC__)
 #endif // !defined(BOOST_ASIO_DISABLE_STD_SYSTEM_ERROR)
 
+// Compliant C++11 compilers put noexcept specifiers on error_category members.
+#if !defined(BOOST_ASIO_ERROR_CATEGORY_NOEXCEPT)
+# if defined(__GNUC__)
+# if ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 7)) || (__GNUC__ > 4)
+# if defined(__GXX_EXPERIMENTAL_CXX0X__)
+# define BOOST_ASIO_ERROR_CATEGORY_NOEXCEPT noexcept(true)
+# endif // defined(__GXX_EXPERIMENTAL_CXX0X__)
+# endif // ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 7)) || (__GNUC__ > 4)
+# endif // defined(__GNUC__)
+# if !defined(BOOST_ASIO_ERROR_CATEGORY_NOEXCEPT)
+# define BOOST_ASIO_ERROR_CATEGORY_NOEXCEPT
+# endif // !defined(BOOST_ASIO_ERROR_CATEGORY_NOEXCEPT)
+#endif // !defined(BOOST_ASIO_ERROR_CATEGORY_NOEXCEPT)
+
 // Standard library support for arrays.
 #if !defined(BOOST_ASIO_DISABLE_STD_ARRAY)
 # if defined(__GNUC__)
@@ -163,7 +177,9 @@
 # if ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 6)) || (__GNUC__ > 4)
 # if defined(__GXX_EXPERIMENTAL_CXX0X__)
 # define BOOST_ASIO_HAS_STD_CHRONO
-# define BOOST_ASIO_HAS_STD_CHRONO_MONOTONIC_CLOCK
+# if ((__GNUC__ == 4) && (__GNUC_MINOR__ == 6))
+# define BOOST_ASIO_HAS_STD_CHRONO_MONOTONIC_CLOCK
+# endif // ((__GNUC__ == 4) && (__GNUC_MINOR__ == 6))
 # endif // defined(__GXX_EXPERIMENTAL_CXX0X__)
 # endif // ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 6)) || (__GNUC__ > 4)
 # endif // defined(__GNUC__)

Modified: trunk/libs/asio/doc/history.qbk
==============================================================================
--- trunk/libs/asio/doc/history.qbk (original)
+++ trunk/libs/asio/doc/history.qbk 2012-05-28 17:36:43 EDT (Mon, 28 May 2012)
@@ -14,10 +14,12 @@
 * Fixed the `epoll_reactor` handling of out-of-band data, which was broken by
   an incomplete fix in the last release.
 * Changed Asio's SSL wrapper to respect OpenSSL's `OPENSSL_NO_ENGINE` feature
- test `#define`.
+ test `#define` ([@https://svn.boost.org/trac/boost/ticket/6432 #6432]).
 * Fixed `windows::object_handle` so that it works with Windows compilers that
   support C++11 move semantics (such as [^g++]).
 * Improved the performance of strand rescheduling.
+* Added support for [^g++] 4.7 when compiling in C++11 mode
+ ([@https://svn.boost.org/trac/boost/ticket/6620 #6620]).
 
 [heading Asio 1.8.0 / Boost 1.49]
 


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