throw_exception_test2.cpp 788 B

12345678910111213141516171819202122232425262728
  1. // Copyright 2018 Peter Dimov
  2. //
  3. // Distributed under the Boost Software License, Version 1.0.
  4. //
  5. // See accompanying file LICENSE_1_0.txt or copy at
  6. // http://www.boost.org/LICENSE_1_0.txt
  7. #include <boost/throw_exception.hpp>
  8. #include <boost/detail/lightweight_test.hpp>
  9. class my_exception: public std::exception
  10. {
  11. };
  12. class my_exception2: public std::exception, public boost::exception
  13. {
  14. };
  15. int main()
  16. {
  17. BOOST_TEST_THROWS( boost::throw_exception( my_exception() ), boost::exception );
  18. BOOST_TEST_THROWS( boost::throw_exception( my_exception2() ), boost::exception );
  19. BOOST_TEST_THROWS( BOOST_THROW_EXCEPTION( my_exception() ), boost::exception );
  20. BOOST_TEST_THROWS( BOOST_THROW_EXCEPTION( my_exception2() ), boost::exception );
  21. return boost::report_errors();
  22. }