Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:30:47

0001 //Copyright (c) 2006-2009 Emil Dotchevski and Reverge Studios, Inc.
0002 
0003 //Distributed under the Boost Software License, Version 1.0. (See accompanying
0004 //file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0005 
0006 #ifndef BOOST_EXCEPTION_7E83C166200811DE885E826156D89593
0007 #define BOOST_EXCEPTION_7E83C166200811DE885E826156D89593
0008 
0009 #ifndef BOOST_EXCEPTION_ENABLE_WARNINGS
0010 #if __GNUC__*100+__GNUC_MINOR__>301
0011 #pragma GCC system_header
0012 #endif
0013 #ifdef __clang__
0014 #pragma clang system_header
0015 #endif
0016 #ifdef _MSC_VER
0017 #pragma warning(push,1)
0018 #endif
0019 #endif
0020 
0021 namespace
0022 boost
0023     {
0024     template <class E>
0025     inline
0026     E *
0027     current_exception_cast()
0028         {
0029         try
0030             {
0031             throw;
0032             }
0033         catch(
0034         E & e )
0035             {
0036             return &e;
0037             }
0038         catch(
0039         ...)
0040             {
0041             return 0;
0042             }
0043         }
0044     }
0045 
0046 #if defined(_MSC_VER) && !defined(BOOST_EXCEPTION_ENABLE_WARNINGS)
0047 #pragma warning(pop)
0048 #endif
0049 #endif