1919// http://www.boost.org/libs/throw_exception
2020
2121#include < boost/exception/exception.hpp>
22+
2223#include < boost/assert/source_location.hpp>
2324#include < boost/config.hpp>
2425#include < boost/config/workaround.hpp>
@@ -38,8 +39,10 @@ namespace boost
3839
3940#if defined( BOOST_NO_EXCEPTIONS )
4041
42+ BOOST_THROW_EXCEPTION_BEGIN_MODULE_EXPORT
4143BOOST_NORETURN void throw_exception ( std::exception const & e ); // user defined
4244BOOST_NORETURN void throw_exception ( std::exception const & e, boost::source_location const & loc ); // user defined
45+ BOOST_THROW_EXCEPTION_END_MODULE_EXPORT
4346
4447#endif
4548
@@ -68,6 +71,9 @@ template<class E, class B> struct wrapexcept_add_base<E, B, 2>
6871
6972} // namespace detail
7073
74+
75+ BOOST_THROW_EXCEPTION_BEGIN_MODULE_EXPORT
76+
7177template <class E > struct BOOST_SYMBOL_VISIBLE wrapexcept:
7278 public detail::wrapexcept_add_base<E, boost::exception_detail::clone_base>::type,
7379 public E,
@@ -175,6 +181,8 @@ template<class E> BOOST_NORETURN void throw_exception( E const & e, boost::sourc
175181
176182#endif // !defined( BOOST_NO_EXCEPTIONS )
177183
184+ BOOST_THROW_EXCEPTION_END_MODULE_EXPORT
185+
178186} // namespace boost
179187
180188// BOOST_THROW_EXCEPTION
@@ -217,6 +225,8 @@ template<class E> class BOOST_SYMBOL_VISIBLE with_throw_location: public E, publ
217225
218226} // namespace detail
219227
228+ BOOST_THROW_EXCEPTION_BEGIN_MODULE_EXPORT
229+
220230#if !defined(BOOST_NO_EXCEPTIONS)
221231
222232#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) && !defined(BOOST_NO_CXX11_HDR_TYPE_TRAITS)
@@ -273,6 +283,8 @@ template<class E> boost::source_location get_throw_location( E const & e )
273283#endif
274284}
275285
286+ BOOST_THROW_EXCEPTION_END_MODULE_EXPORT
287+
276288} // namespace boost
277289
278290#endif // #ifndef BOOST_THROW_EXCEPTION_HPP_INCLUDED
0 commit comments