diff --git a/include/boost/intrusive/circular_list_algorithms.hpp b/include/boost/intrusive/circular_list_algorithms.hpp index 9ec0770..eb99a23 100644 --- a/include/boost/intrusive/circular_list_algorithms.hpp +++ b/include/boost/intrusive/circular_list_algorithms.hpp @@ -421,7 +421,7 @@ class circular_list_algorithms BOOST_CATCH(...){ node_traits::set_next (last_to_remove, new_f); node_traits::set_previous(new_f, last_to_remove); - throw; + BOOST_RETHROW; } BOOST_CATCH_END node_traits::set_next(last_to_remove, new_f); diff --git a/include/boost/intrusive/detail/common_slist_algorithms.hpp b/include/boost/intrusive/detail/common_slist_algorithms.hpp index 4c7f1a1..b7b6a7f 100644 --- a/include/boost/intrusive/detail/common_slist_algorithms.hpp +++ b/include/boost/intrusive/detail/common_slist_algorithms.hpp @@ -143,7 +143,7 @@ class common_slist_algorithms } BOOST_CATCH(...){ node_traits::set_next(last_to_remove, new_f); - throw; + BOOST_RETHROW; } BOOST_CATCH_END node_traits::set_next(last_to_remove, new_f);