Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r65346 - in trunk: boost/exception/detail libs/exception/src
From: emil_at_[hidden]
Date: 2010-09-07 17:46:12


Author: emildotchevski
Date: 2010-09-07 17:46:10 EDT (Tue, 07 Sep 2010)
New Revision: 65346
URL: http://svn.boost.org/trac/boost/changeset/65346

Log:
properly ifdeffing the X86 MSVC non-intrusive exception_ptr support
Text files modified:
   trunk/boost/exception/detail/clone_current_exception.hpp | 11 +++++------
   trunk/libs/exception/src/clone_current_exception_msvc.cpp | 6 +++++-
   2 files changed, 10 insertions(+), 7 deletions(-)

Modified: trunk/boost/exception/detail/clone_current_exception.hpp
==============================================================================
--- trunk/boost/exception/detail/clone_current_exception.hpp (original)
+++ trunk/boost/exception/detail/clone_current_exception.hpp 2010-09-07 17:46:10 EDT (Tue, 07 Sep 2010)
@@ -26,18 +26,17 @@
             }
 
         class clone_base;
- int clone_current_exception_msvc( clone_base const * & cloned );
+ int clone_current_exception_msvc_x86( clone_base const * & cloned );
 
         inline
         int
         clone_current_exception( clone_base const * & cloned )
             {
-#ifdef BOOST_ENABLE_NON_INTRUSIVE_EXCEPTION_PTR
-#ifdef _MSC_VER
- return clone_current_exception_msvc(cloned);
-#endif
-#endif
+#if defined(BOOST_ENABLE_NON_INTRUSIVE_EXCEPTION_PTR) && defined(_MSC_VER) && defined(_M_IX86) && !defined(_M_X64)
+ return clone_current_exception_msvc_x86(cloned);
+#else
             return clone_current_exception_result::not_supported;
+#endif
             }
         }
     }

Modified: trunk/libs/exception/src/clone_current_exception_msvc.cpp
==============================================================================
--- trunk/libs/exception/src/clone_current_exception_msvc.cpp (original)
+++ trunk/libs/exception/src/clone_current_exception_msvc.cpp 2010-09-07 17:46:10 EDT (Tue, 07 Sep 2010)
@@ -10,6 +10,8 @@
 #error This file requires exception handling to be enabled.
 #endif
 
+#if defined(_MSC_VER) && defined(_M_IX86) && !defined(_M_X64)
+
 #include <boost/exception/detail/clone_current_exception.hpp>
 #include <boost/exception/exception.hpp>
 #include <boost/shared_ptr.hpp>
@@ -266,7 +268,7 @@
     exception_detail
         {
         int
- clone_current_exception_msvc( clone_base const * & cloned )
+ clone_current_exception_msvc_x86( clone_base const * & cloned )
             {
             BOOST_ASSERT(!cloned);
             int result = clone_current_exception_result::not_supported;
@@ -288,3 +290,5 @@
             }
         }
     }
+
+#endif


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