now works with -fno-exceptions and -fno-rtti

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@110828 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Howard Hinnant
2010-08-11 17:04:31 +00:00
parent 81e68580b2
commit d444470d6c
20 changed files with 394 additions and 10 deletions

View File

@@ -54,15 +54,21 @@ std::set_terminate(std::terminate_handler func) throw()
void
std::terminate()
{
try {
#ifndef _LIBCPP_NO_EXCEPTIONS
try
{
#endif
(*__terminate_handler)();
// handler should not return
::abort ();
#ifndef _LIBCPP_NO_EXCEPTIONS
}
catch (...) {
catch (...)
{
// handler should not throw exception
::abort ();
}
#endif
}