Home | History | Annotate | Download | only in tests
      1 #include <cassert>
      2 #include <cstdlib>
      3 #include <exception>
      4 
      5 void expected_terminate() {
      6   exit(0);
      7 }
      8 
      9 void throw_exception() {
     10   // do nothing and return, so that std::terminate() can be invoked.
     11 }
     12 
     13 int main() {
     14   std::set_terminate(expected_terminate);
     15   std::set_unexpected(throw_exception);
     16   try {
     17     std::unexpected();
     18     assert(false);
     19   } catch (...) {
     20     assert(false);
     21   }
     22   assert(false);
     23   return 1;
     24 }
     25